1

我有一个模拟输入对象(winsound)在 MATLAB 中采样并执行音频任务。

set(AI, 'SamplesAcquiredFcnCount',num_samples)
set(AI, 'SamplesAcquiredFcn',{@function1,AI,num_samples})

我的理解是,模拟输入对象只是不断地采样,因此当样本达到设定的数量时, function1会一直被调用。所以它具有“优先级”。

现在我有另一个函数(function2),我想连续处理function1更新的(全局)变量。我的问题是,在我当前的实现中,function2 不会“回来”并查看来自模拟输入的更新变量。

我想在一定的持续时间或条件下连续调用 function2 ,但是如何让它看到来自模拟输入 function1 的更新变量?(它们已经是全局的,但是一旦 function2 开始,它就不会获得更新的变量,只有在它开始时才会如此)。

我试图研究并行计算工具箱中的东西来帮助我,但没有找到任何东西。我真的很感激任何帮助!这真的会把我的项目拼凑在一起

4

1 回答 1

2

最后,确保良好的并行操作的最佳方法就是在 function1 中调用 function2。由于 function1 在模拟输入对象中被很好地控制为回调,因此这是最安全的方法。

于 2012-10-17T15:36:50.320 回答