线程池常见的工作队列

线程池常见的工作队列有以下几种:

1. 无界队列:使用一个无限制的队列来保存等待执行的任务,直到线程池中的线程可用时才会执行任务。这种队列可以保证任务不会被拒绝,但是可能会导致内存溢出。

2. 有界队列:使用一个固定大小的队列来保存等待执行的任务,如果队列已满,则新提交的任务将被拒绝。这种队列可以避免内存溢出,但是可能会导致任务被拒绝。

3. SynchronousQueue:使用一个没有缓存的队列来保存等待执行的任务,每个插入操作必须等待一个相应的删除操作,反之亦然。这种队列可以保证任务不会被拒绝,但是可能会导致线程饥饿。

4. 优先级队列:使用一个优先级队列来保存等待执行的任务,根据任务的优先级来决定执行顺序。这种队列可以实现任务的优先级调度,但是可能会导致低优先级的任务长时间等待。

 

posted @ 2023-05-16 17:18  huigui_mint  阅读(1888)  评论(0)    收藏  举报