1、開啓線程的三種方式
https://www.cnblogs.com/xiaostudy/p/9800601.html
2、線程run()和start()方法區別
https://blog.csdn.net/QQ2899349953/article/details/81772104
3、控制某個方法允許併發訪問線程的個數
SemaphoreTestMain
https://www.jianshu.com/p/9a831edfdf25
4、java wait和sleep方法區別
https://blog.csdn.net/cwl_0514/article/details/79894108
5、wait/notify關鍵字的理解
https://blog.csdn.net/wthfeng/article/details/78762343
6、什麼導致線程阻塞
https://blog.csdn.net/weixin_41101173/article/details/79679300
7、線程關閉
https://blog.csdn.net/u010199866/article/details/82668417
interrupt future.cancle shutdown sutdownnow
8、同步方法
https://www.cnblogs.com/duanxz/p/3709608.html?utm_source=tuicool&utm_medium=referral