用通俗点的语言来解释python进程中的锁(Lock)与信号量(semaphore)的区别

锁(Lock),一把钥匙。每次只有一个子进程执行。

信号量(semaphore),多把钥匙,每次可以同时多个进程执行。

信号量解决了多线程同时进入子进程问题。

所以信号量是锁的进化升级,解决锁只能让一个子进程运行的瓶颈。

另一种现实场景需要解决,即根据特定条件才允许进入子程序。python同样引入了事件模式来解决这类经典场景。

猜你喜欢

转载自www.cnblogs.com/hisweety/p/10837627.html