python多线程死锁问题处理

python多线程死锁问题处理

死锁的这个概念在很多地方都存在,大概介绍下死锁是怎么产生的

1.A拿了一个苹果

2.B拿了一个香蕉

A现在想再拿个香蕉,就在等待B释放这个香蕉,B同时想要再拿个苹果,这时候就等待A释放苹果

这样就是陷入了僵局,这就是生活中的死锁。

关于死锁的问题解决方案:

1.对锁进行排序

2.可以让线程在尝试持有新的锁失败的时候主动放弃所有目前已经持有的锁,比如我们可以设置机制检测死锁的发生并对其进行处理。