c - 线程安全队列实现

标签 c multithreading

<分区>

在我的应用程序中,我有 2 个线程加上主线程。

一个线程是在中断发生时从I/O模块获取数据(4096字节到缓冲区)。另一个线程是使用这些数据(处理和格式化并将数据写入文件)。

实现此目标的最佳方法是什么?

我不能丢失生产者线程中发生的快速数据。

我将不胜感激我可以研究的任何例子。

我正在尝试实现线程安全队列,但遇到了困难。

对不起,我忘了包括平台和其他信息。 我正在使用 windows xp(32 位)和 Microsoft visual studio 5.0 编译器。

最佳答案

我将假设 are 在 POSIX 平台上。

使用mutex

然后消费者可以在生产者失明的情况下撕掉蛴螬。

对不起 Metaphor

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

相关文章:

c - wait(NULL) 定义明确吗?

c++ - 如何在 C++ 中添加异步等待?

c - 线程内读取错误的数组

Java:多线程和 UDP 套接字编程

c# - 如何在以下场景中使用线程或任务模式

java - 我正在尝试从不同的 URL 获取数据,然后在后台加载

c - 逗号运算符 , 有什么作用?

c - 为什么第一个代码有效而第二个给出错误的输出?

C 宏 - 未在此范围错误中声明

char类型按位运算失败转int