我的主要应用程序是从连续流式传输数据的音频设备解析数据。我希望能够让用户按任意键停止进程,然后我的应用程序将停止解析并将所有接收到的数据保存到文件中。
解析循环看起来很像这样:
while(1)
{
audio_read(buf);
}
所以连续地,我想听一个键输入来停止这个执行。我不想在读取音频数据时轮询 key ,因为这必须尽快运行。 我试过阅读微软的 documentation但我真的不明白如何轻松设置代码以在不同线程中执行函数。
最佳答案
一个线程将等待按键,并设置一个 bool 标志。正在处理音频数据的线程需要定期检查是否设置了此标志。
关于c - 在不同线程中使用 Windows C 等待 "any key",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23336058/