诺布斯问大家晚上好。首先,对不起,我的英语,我试图更好地了解这门语言。
我有三个文件:
Main.cpp ->包含图形接口、菜单线程和音频线程。Lettore.cpp ->包含重新配置文件类型的函数,并使用正确的库播放音频,还包含停止、播放、暂停、跳过歌曲的函数。两个音频代码库->,对曲目进行解码,并将其发送给ao播放。
现在的问题是:我如何才能实现这一点?我的困难在主档案里。我写了“菜单”(“播放/暂停,跳过,ecc……”)线程代码。现在音频线程必须与主线程分开(因为不能阻止程序,播放功能在一段时间内),但必须与菜单线程通信……我怎么能做到这一点?
我使用g++和C++11线程模块。谢谢您抽时间见我
如果这个问题不符合规则,我马上修改这个问题!
发布于 2014-02-07 08:12:13
使用与菜单和音频线程相同的队列。菜单线程用命令填充队列,音频线程偶尔会检查它。
您可以在http://moodycamel.com/blog/2013/a-fast-lock-free-queue-for-c++中找到一个无锁线程安全队列的实现。
发布于 2014-02-07 07:16:18
如果使用的是p线程,请使用互斥变量或队列。有许多例子可用于p线程通信。pthread mutex variables to communicate among threads
https://stackoverflow.com/questions/21621213
复制相似问题