- 博客(4)
- 收藏
- 关注
原创 C语言实现线程池
上锁后,线程循环检测任务队列是否为空,如果任务队列为空,则通过条件变量让线程处于等待状态,当任务队列中有新任务到来时,线程被唤醒,并从任务队列中拿出一个任务,同时将该任务从任务队列中删除。由于多个线程需要同时向任务队列中获取任务,所以任务队列为临界资源。上锁后,采用双向链表的插入操作,将新任务插入任务队列中,同时采用条件变量,通知唤醒线程队列,有新任务到来。在线程池创建时,会预先创建多个线程,多个线程并不会立刻执行具体的任务,而是进入等待状态,当任务队列有任务时,多个线程会被唤醒,抢夺具体任务的执行权。
2025-10-06 22:55:05
617
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
1