gpt4 book ai didi

c - 回调函数内的同步问题

转载 作者:行者123 更新时间:2023-11-30 19:48:51 25 4
gpt4 key购买 nike

在连续循环中,扫描条形码,如果扫描是有效的文本数据,则读出/播放语音数据,这发生在不同的上下文中。首先进行文本播放,然后执行其回调函数,然后进行语音播放,然后执行其回调函数。进行多次扫描时会出现此问题,有时会出现同步问题。当第一个条码的文本播放正在进行时,如果进行另一次扫描,则播放第二个条码的语音数据(跳过第二个条码的文本播放)。这种行为只是有时才会出现,因此调试起来有点困难。

有什么想法如何在回调中提供同步吗?

预先感谢您的帮助。

-阿帕娜

最佳答案

您的问题不是很清楚,所以假设您当前有 3 个线程

  1. 从硬件读取条形码
  2. 显示代码?
  3. 将代码作为条形码中包含的文本进行音频播放

读取条形码的线程是数据的生产者,应该将工作单元推送到消费者堆栈上,并且应该通知堆栈有一个工作单元。粗略地用谷歌搜索生产者-消费者队列。

线程 2 和 3 似乎是同步的,应该合并为一个线程?

关于c - 回调函数内的同步问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16643677/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com