В многопроцессорном процессе 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`
Очередь - это многопроцессорная очередь, которая создается между основным процессом и этим.Однако с этим определением обратного вызова процесс никогда не включается.Если я не использую очередь, это работает.Так что, если это не так, как я могу определить обратный вызов, который помещает только что прочитанные данные в многопроцессорную очередь?