如何使用动态事件停止多个while循环

2019-07-17 21:26发布

仿照消息队列范例,我采用动态事件来停止四个while循环,就是在每个循环里加一个事件结构和动态事件接线端,一个地方发送停止信号,所有循环都停止。
之前用这个方法停止三个循环,虽然偶有死机,但是总体还是很稳定的。但是现在有一个循环完全停止不了,后来把其他循环的事件结构删了,发现这个停不了的循环还是可以停的。应该是因为其他循环把动态事件给刷新了?

下面具体提两个问题,希望懂的大神指点迷津。
①动态事件,我现在只用它来停止while循环,事件信息会被刷新么?为什么三个循环接收到了,而一个循环没有接收到?
②停止多个while循环,有没有更好更稳定的方法。在每个while里加个事件结构,总觉得有问题,事件结构本身麻烦就多。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
13条回答
ren472421
2019-07-18 02:20
首先事件结构每个事件没有响应就不会进入该程序,首先想要停止的线程必须有个循环每次都能进入,如果是这样,可以通过全局变量接到WHLIE停止端。这样可以通过某个时间结构将全局置TURE。这样就可以停止所有线程。另:请注意事件结构,如果一个事件里有个死循环,那么别的事件结构不会触发。除非你把每个循环封装成VI异步调用或者通过静态VI方法节点实现。

一周热门 更多>