在python多处理过程中,我定义并分配了以下回调:
def callbackToBuffer(taskHandle,eventType,nSamples,callbackData):
readerUnscaled.read_int16(dataContainer,number_of_samples_per_channel=nSmpTrig)
#samples=taskAI.read(number_of_samples_per_channel=nSmpTrig)
queue.put(dataContainer.copy())
return 0
taskAI.register_every_n_samples_acquired_into_buffer_event(nSmpTrig, callbackToBuffer)
` taskAO.start()
taskAI.start()
taskAI.wait_until_done(WAIT_INFINITELY)
print("INFO: audio recording stopped")
evtStopped.set()
taskAO.close()
taskAI.close()
del taskAO
del taskAI
del callbackToBuffer`
queue是一个在主进程和该主进程之间创建的多处理队列。但是,使用此回调定义,过程永远不会加入。如果我不使用队列,这行得通。因此,如果不是这样,我如何定义一个将新读取的数据放入多处理队列的回调?