定义线程池 和 死锁产生及避免

ThreadPoolExecutor 可以定义更灵活的线程池。

1 : 线程池死锁

如果任务依赖于其他任务,可能产生死锁。 可以通过调整线程池的大小

2: 运行时间较长的任务

可以限定任务等待资源的时间,不要无限制的等待

3: 锁顺序死锁

当一个程序每次获得两次以上的锁时候,就可能产出死锁。

解决死锁的方式: 可以使用显示锁 ,手动释放锁 

 

猜你喜欢

转载自kayak2015.iteye.com/blog/2288452
今日推荐