视频资源获取失败
本章节我们继续分析 addWorker 源码,由于这个方法源码比较复杂,所以我们可以先问问自己以下问题,然后带着问题去阅读源码:
addWorker 为什么在 add 和 remove 的时候要上锁?
提交的任务会包装成 Worker 对象对吗?Worker 存到哪里了?
Worker 添加失败或者添加成功但是线程启动失败会怎样?
private boolean addWorker(Runnable firstTask, boolean...