import threading
import time
number = 0
lock = threading.RLock() #是Lock()的升级版,用Rlock()即可
def run(num):
  lock.acquire() #跟cpu申请一把锁
  global number
  number +=1
  print number
  lock.release() #释放锁

  time.sleep(1)
  #lock.release() 如果放在这里,将是串行输出,每个线程独占cpu的时间,达不到并行效果
for i in range(20):
  t = threading.Thread(target=run,args=(i,))
  t.start()

相关文章:

  • 2021-05-14
  • 2022-01-01
  • 2021-09-27
  • 2022-12-23
  • 2021-11-21
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-02-19
  • 2021-10-21
  • 2022-12-23
  • 2022-12-23
  • 2022-01-04
  • 2021-11-17
相关资源
相似解决方案