gpt4 book ai didi

c - 线程和队列

转载 作者:太空宇宙 更新时间:2023-11-04 04:12:40 25 4
gpt4 key购买 nike

我想通过实现并行工作的线程来加速排序功能。我对 pthreads 的基本了解是创建、加入和使用互斥锁来防止死锁。

所以我的问题是:如何在完成任务后将任务分配给线程?例如,如果我将列表的一半交给线程 1 进行排序,将另一半交给任务 2 进行排序,一旦任务 1 完成,它应该跳转到任务二并帮助它。

如果有帮助,我正在使用快速排序进行测试。

我试图查看是否有任务分配功能,但我偶然发现的功能不同。

最佳答案

没有什么特别复杂的。

首先,您需要一个可等待的队列。也就是说,维护的事物列表允许线程在队列为空时等待。

其次,您需要编写代码从可等待队列中弹出一个作业,如果队列中没有作业则等待。然后它就完成了这项工作。

这是一些 example code我写的。它是用 C++ 编写的,但通过查看代码,总体思路应该是显而易见的。

关于c - 线程和队列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55506402/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com