同步
多進(jìn)程使用的同步原語(yǔ)和線程的是類似的,可以通過(guò)鎖來(lái)限制只能有一個(gè)進(jìn)程在某時(shí)訪問(wèn)資源。
from multiprocessing import Process, Lock
def f(l, i):
l.acquire() # 獲得num的使用權(quán)
print 'hello world', i
l.release() # 釋放num的使用權(quán)
if __name__ == '__main__':
lock = Lock() # 創(chuàng)建好的鎖 所有進(jìn)程通過(guò)這個(gè)鎖來(lái)協(xié)調(diào)
for num in range(10):
Process(target=f, args=(lock, num)).start()