c++ - Producer Consumer 使用 intel-pin 内线程

标签 c++ multithreading producer-consumer intel-pin

我正在尝试实现一个生产者消费者模型,以将我的 pin 工具的分析和记录数据(从分析中收集)部分分开。通过 PIN 线程 API,我找不到任何可以根据某些谓词暂停线程或发出线程恢复信号的函数(如 pthread_cond_wait()pthread_cond_signal() 在 POSIX 线程中)。那么,是否有任何解决方法可以使用现有函数实现生产者消费者模型,同时避免忙等待。

注意:生产者线程和消费者线程都是由 PIN_SpawnInternalThread() 创建的内部线程。

最佳答案

我建议您使用 Pin API 中提供的信号量类。您可以找到在 Windows 中使用信号量的生产者/消费者解决方案示例。

关于c++ - Producer Consumer 使用 intel-pin 内线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30580063/

相关文章:

c++ - C/C++ 中的引导加载程序?

c# - WaitCallback中下划线的含义

c - 稍后调用线程函数

java - 并发性:如何实现同时具有传入和传出队列的执行器?

c++ - 生产者/消费者,如何确保在关闭所有消费者之前耗尽线程安全队列?

c++ - 如何在 linux 中使用 boost

c++ - 将引用(右值)移动到函数

C++ 数组/指针声明问题

multithreading - 忽略平滑变化的浮点值的读写竞争条件是否安全?

c++ - 一个生产者,两个消费者作用于生产者产生的一个 'queue'