tasks = threadpool.makeRequests(download, [f'电影{x}' for x in range(100)])tasks2 = threadpool.makeRequests(save, [0])
pool = threadpool.ThreadPool(10)
for task in tasks2:pool.putRequest(task)for task in tasks:pool.putRequest(task)
pool.wait()
3、多线程竞争一个资源 - 线程锁(.Lock)
当有多个线程想要竞争一个资源,想要保护资源(在关键操作上只有一个线程能够访问到这个资源)就需要用到线程锁,当一个线程拿到锁的时候,其他线程只能等到该线程执行完之后释放锁,再进行争抢锁
4、遇到死锁 - 利用线程调度
当一个线程拿到锁之后,可能会死在里面,但是其他线程又没有接收到释放锁的消息,无法拿到锁,这就会造成死锁的情况,这种情况就可以利用线程调度来解决 。
- 英雄无敌3死亡阴影
- 两个电感串联的互感怎么求,两电感之间的互感怎么计算?
- 保/防护器件系列之TVS-瞬态抑制二极管
- 揭开喜马拉雅人骨湖之谜
- 东汉的巫蛊之祸是怎么回事?汉武帝是怎么做的
- 汉武帝时期的巫蛊之祸是怎么回事?又有何结果
- 揭秘:秦二世胡亥与公子扶苏之间有着怎样的故事
- 娄昭君究竟是怎样的人北齐四帝之母娄昭君简介
- 【Kettle从零开始】第二弹之Kettle文件夹与界面介绍
- R语言之方差分析篇