并行是并发的子集。
并发:系统具有处理多个任务(动作)的能力;
并行:系统具有同时处理多个任务(动作)的能力;
同步:当进程执行到一个IO(等待外部数据)的时候。同步
异步:当进程执行到一个IO的时候,不等,一直等待接受成功之后才处理。---相对效率更高。
同步锁
import threading
import time
num = 100
def sub():
global num
lock.acquire()
temp = num
time.sleep(0.001)
num = temp - 1
lock.release()
l = []
lock = threading.Lock()
for i in range(100):
t = threading.Thread(target=sub)
t.start()
l.append(t)
for t in l:
t.join()
print(num)
'''
0
'''
递归锁
threading.RLock()