完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
|
一个子vi里面只有顺序结构,结构内是一些算法模块,假设调用该子vi后,因为某些原因导致某一个算法模块卡住了,也没有提示信息,在子vi中有没有调用节点可以做一个超时,让程序强制停止,然后主程序继续运行
|
|
相关推荐
33个回答
|
|
木头feng 发表于 2016-12-16 12:35 1.从根本上解决这个问题:算法会卡死这种情况在编程上是不允许出现的,是否在某些情况下算法的输入不合理,或者算法里某些逻辑不正确,通过调试应该是可以解决算法卡死这个问题的。我所遇到的LabVIEW自带功能里能在没有循环且输入正常的情况下卡死的情况只有一种,是关于数值引用和同址结构的,不知道你遇到的是不是这种。 2.Abort调用节点应该是能终止掉任何VI的,就跟你按了一下程序框图里的那个终止执行的红点一样。如果这个节点也终止不了,那么你在运行的时候把算法模块的前面板显示出来,等它卡死的时候你在程序框图里点一下终止程序的红点看看能不能停。我挺想研究一下什么类型的程序是Abort终止不了的。 3.再退一步,如果实在停不掉,把你的算法模块子VI设置成可重入执行,用可重入异步调用的方式调用算法模块,返回数据的方式还跟我前面说的一样用队列,这样如果你的算法卡死了,就让它卡在那吧,下次还可以用可重入异步调用的方式再执行这个算法。这种方法前提是你的算法是允许设置成可重入的,优点是算法就算卡死了主程序也能继续跑,而且下次还能再调用这个算法,缺点是卡死的算法还在那运行,占用CPU、内存资源。 建议还是从根本入手,调试算法为什么会卡死。
最佳答案
|
|
|
|
|
|
除非你子VI的顺序结构里面有while循环,没有循环是不会卡住的,如果有while循环,你可以用计时,没循环一次计时,比如循环了300次,你就直接退出While循环,进行下一个顺序结构
|
|
|
|
|
|
当然可以,很简单!你把算法后边加个子VI,子VI是判断有没有错误的 有错误,错误处理下继续进行就可以了! 小子好好学吧!
|
|
|
|
|
|
你这个是扯蛋啊。他的算法VI卡住了不结束还怎么输出错误信息。。。 就这水平还让别人好好学学? |
|
|
|
|
|
没有学到这一块 学习了
|
|
|
|
|
|
道理是通的,在顺序结构前后价格时间计时 在算法那加个循环,计算下时间,时间到了就执行下一步,这不就行了,活学活用,你们学的太僵硬!!!!
|
|
|
|
|
|
也就是模态对话框嘛
|
|
|
|
|
|
也就是模态对话框嘛
|
|
|
|
|
|
|
|
|
|
|
|
9楼的例子可以参考,但理解原理才行,活学活用
|
|
|
|
|
|
学习了。。。。。。。。。。。。。
|
|
|
|
|
|
继续扯吧。这种肯定要使用额外的循环来计时来杀算法VI,在算法外面套循环什么的都是扯蛋。你这一看就是想当然的,从来没碰到这灰实际情况的。 |
|
|
|
|
|
首先,是在算法模块卡主的,不会有输出,也就没有错误处理的说法了,你没理解我的意思,理解后再说 |
|
|
|
|
左耳朵的耗子 发表于 2016-12-15 18:43 只有顺序结构,没有while循环,绝对是在模块上因为某个原因卡住了,如果有while循环我自己也会设置超时了,我现在问的是有没有实现此功能的调用节点 |
|
|
|
|
|
在算法模块卡住了,放再循环内,连当前的循环都进行不下去,还想做计时?你想清楚点 |
|
|
|
|
|
|
|
|
|
|
|
你的算法模块是用LabVIEW写的吗,还是调用了dll或其它方式? 这个节点关闭VI是没有问题的,你可以尝试把这段代码放到算法模块的子VI里去试一下。 如果实在停止不了算法模块,建议采用异步调用的方式调用算法模块,算法模块的执行结果通过队列或其它方式返回给主程序,同时,调起算法模块以后在主程序里开始计时,超过时间没返回算法结果就认为算法执行失败了,此时可以通知用户算法执行失败了看看要不要采取其它措施。这种方法能保证你的主程序在算法卡住的时候也能继续运行,算法卡住的问题还是需要另外想办法解决。 |
|
|
|
|
krize 发表于 2016-12-16 12:03 算法模块是labview自带的,不是调用的dll,只是一个模块,而且主程序需要自动化测试,没有人为干预,所以需要监测是否超时,然后给出错误结果,自动重测 |
|
|
|
|
|
不废话直接上图,算法能算出来就把结果取走,不能就去一个错误数送出去,强制跳出子VI成功
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
211 浏览 0 评论
请教大神,在labview里面对实时扫描资源中的C系列模块NI9234进行配置发生非预期错误
1709 浏览 0 评论
1585 浏览 0 评论
LABVIEW 2023 Q1调用python后一直报错1671
1960 浏览 2 评论
5207 浏览 3 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 09:00 , Processed in 1.109244 second(s), Total 115, Slave 95 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
5050