原创 cvi 多线程

2011-4-19 11:27 7362 12 13 分类: 工业电子
在CVI中使用多线程的时候,如果线程中是个while(1){...}的结构,每次只做判断,或者干脆就循环的话,前台的面板基本上还是处于死机的状态,根本看不出多线程有什么好的。即使你在循环体里面加入了Delay(0.0001)之类的,依然卡死,除非延迟到10ms左右,才能有点响应。
可如果你在循环体里面加入 SetCtrlVal之类的函数,操作一下面板,即使并不改变状态,也是有用的。加入了一句SetCtrlVal后,多个线程的运行都很流畅。面板也可以正常工作了。
PARTNER CONTENT

文章评论1条评论)

登录后参与讨论

用户377235 2013-4-19 15:00

可以加一个Sleep(0);

相关推荐阅读
用户374209 2012-01-19 15:41
转发mktemp函数,参数必须为数组
参数template所指的文件名称字符串必须声明为数组,如:     char template[ ]=”template-XXXXXX”;     不可用char * templ...
用户374209 2012-01-18 16:31
__int64 printf需要用%I64d
/* FGETPOS.C: This program opens a file and reads  * bytes at several different locations.  */ ...
用户374209 2011-10-17 11:36
cvi 下借助dos命令比较两个文件
#include <ansi_c.h>#include <cvirte.h>  #include <userint.h>#include "cmd.h" stati...
用户374209 2011-10-17 11:34
System( )与LaunchExecutable( )的区别
这两个函数之间最主要的区别是,如果你用System( )来执行,你的CVI应用程序会一直等待到你调用的程序结束后再执行。但是如果你使用了CVI的函数,LaunchExecutable( ),你调用的应...
用户374209 2011-09-01 13:59
.ko文件
.so 文件是动态链接库文件,相当于 win下的 .dll 文件。 .ko 是内核模块文件,是内核加载的某个模块,一般是驱动程序。...
用户374209 2011-06-21 14:57
使用Snmp++获取MIB表
Snmp++是一套强大的网络管理应用开发包。它提供了Snmp网管协议所描述的所有命令,并且提供SMI数据类型的解析。MIB数据包含普通数据和表数据。在提取表数据时,由于表项的数量和Oid都不确定,所以...
EE直播间
更多
我要评论
1
12
关闭 站长推荐上一条 /3 下一条