问题三:常见的死锁问题
(一)多个线程获取多个资源
问题描述:
多个线程都在获取多个资源,但是获取资源的顺序不同。
解决:
多个线程获取组员的时候,加锁解锁的顺序必须保持一致。
(二)哲学家就餐问题
问题描述:
每个哲学家(相当于一个线程)占用了一个筷子资源,因为得不到另外一个筷子资源,造成几个线程互相等待对方释放资源,因为没有线程释放资源(筷子),造成整个系统死锁。
解决:
参考Java编程思想上的解决方案???
(三)多线程的生产者消费者模型
问题描述:
一个生产者,多个消费者。
解决:
多线程程序 线程间的互斥 线程间同步通信