摘要:
1 """ 2 协程,运行的时候轮流去执行各个任务,如果生产者生产的速度比较慢,这里可以使用者个切换出去 3 4 greenlet 会交出执行权,但是如果后面的耗时任务也不会就进入耗时,等下次轮到了,还是要进行耗时 5 这个程序的效果就只能够是轮询,起不到实际的节约时间的效果 6 """ 7 imp 阅读全文
摘要:
1 """ 2 线程通信的生产者与消费者 3 python的queue模块中提供了同步的线程安全的队列类,都具有原子性,实现线程间的同步 4 Queue (FIFO: fist in fist out) 5 LifoQueue (LIFO: last in fist out) 6 PriorityQ 阅读全文
摘要:
1 """ 2 死锁 3 要AB两个锁 4 当A锁内部需要使用B锁,同时B锁内部需要使用A锁的时候,就要可能会出现死锁 5 6 出现死所的解决方法: 7 1.重构代码 8 2.添加timeout时间 9 10 下面代码中要可能返回下面内容,在同时认为锁被对方占用,同时释放 11 Thread-1获取 阅读全文
摘要:
1 """ 2 线程锁 3 我这用的是python3.7,必须要加锁才可以保证数据的确定性 4 """ 5 import time 6 from threading import Thread, Lock 7 8 lock = Lock() 9 10 list1 = [0] * 10 11 12 1 阅读全文