基本上,我必须为操作系统创建一个简化的设备控制器。我需要创建同步和异步函数来输入/输出一个字的数据到一个队列,当“设备”准备好时,它就会发出信号&函数返回。同步函数会自行阻塞,直到设备从队列中删除该字&信号函数(output)和请求得到满足为止(input)。
我不确定如何处理同步函数,因为它们需要阻塞,直到请求被处理。我如何实现阻塞方面?使用pthread锁能满足我的需求吗?
谢谢。
发布于 2014-04-06 08:31:47
如果你在用户空间:是的,使用pthread互斥。在消费者端,如果没有可用的数据,您将执行pthread_mutex_lock
。在生产者上,您将在新数据提交到队列后执行pthread_mutex_unlock
。
https://stackoverflow.com/questions/22887989
复制相似问题