弱问,调用子vi时,主vi的控件动作一定会被挂起么?

2019-07-18 02:39发布

本帖最后由 xxfzero 于 2015-9-18 03:23 编辑

大家好,我想实现这样一个功能,主vi在调用子vi后,能通过stop按钮随时停掉子vi,目前用通知器做,经过调试,发现:一旦调用子vi,即使stop按钮有动作,通知器也无法发出通知,直至子vi运行完。当然,子vi运行完之后,通知器工作还是正常的。请问有什么办法能解决这个问题的么

main.png
sub vi.png
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
imcu2007
1楼-- · 2019-07-18 04:45
一般子VI的设计是单次循环,不建议使用多次循环结构。需要循环的话通过状态机结构来实现,
xxfzero
2楼-- · 2019-07-18 10:36
imcu2007 发表于 2015-9-18 08:33
一般子VI的设计是单次循环,不建议使用多次循环结构。需要循环的话通过状态机结构来实现,

哦,是这样,子vi设计500ms*20次循环的目的就是检查是否有通知子vi就会停止,结论是“是的”,现在看起来,要能“随时”停掉子vi,有两个步骤,一是子vi调用后,主vi还能随时发通知,二是一有通知,子vi就停,目前步骤二没有什么问题,我也可以去掉多次循环,用别的方法实现收通知,主要现在是步骤一卡住了
一只飞翔的猪
3楼-- · 2019-07-18 12:19
 精彩回答 2  元偷偷看……
xxfzero
4楼-- · 2019-07-18 14:49
一只飞翔的猪 发表于 2015-9-18 14:01
采用动态调用VI方式,这种方式可以让子VI在后台运行且不影响主VI,可以随时关闭

哦,谢谢,我试了下,我在右键菜单的调用设置中选“首次调用时加载并保留”,好像没有什么改善,看动态调用的帮助似乎也只是说动态调用可以“先加载主vi, 等要调用子vi时才加载子vi”,并没有说加载子vi后,主vi控件还能起作用
一只飞翔的猪
5楼-- · 2019-07-18 19:56
xxfzero 发表于 2015-9-18 14:34
哦,谢谢,我试了下,我在右键菜单的调用设置中选“首次调用时加载并保留”,好像没有什么改善,看动态调用的帮助似乎也只是说动态调用可以“先加载主vi, 等要调用子vi时才加载子vi”,并没有说加载子vi后,主vi控件还能起作用 ...

动态调用VI是可以让子VI在后台运行并可以通过主VI的控制关闭子VI,这里不好说清楚,你找找这方面的例子看看。
zhaomin910629
6楼-- · 2019-07-19 01:46
可以试试全局变量  可能会有帮助

一周热门 更多>