基于线程的WINCE测试程序
来源:互联网 发布:ubuntu恢复删除的文件 编辑:程序博客网 时间:2024/05/01 21:32
在线程中建立随机数执行路径,有两种方式:
(1)WaitForSingleObject带无限时间
HANDLE Nled_Test_Event; //线程事件申明
i初始化:
Nled_Test_Event = CreateEvent(NULL,TRUE,FALSE,NULL); //创建初始值为FALSE的手工复位事件
CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)Nled_Test_Thread,0,0,NULL); //创建线程
SetEvent(Nled_Test_Event); //置事件有效。除非手工清除,否则该事件就算捕获到后也仍然有效
线程函数:
DWORD WINAPI Nled_Test_Thread()
{
DWORD dwWaitTime = IN FINITE; //以无限时间等待
int status;
int kCount;
srand(1); //以1为基准值,产生随机数种子。种子只产生一次
while(1) //因为循环中的事件是手工复位的,所以只要不复位,该事件是一直有效的,线程会一直执行下去
{
status = WaitForSingleObject(Nled_Test_Event,dwWaitTime); //等待线程事件
if(status == WAIT_FAILED)
{
RETAILMSG(1, (TEXT("Nled_Test_Thread:Create failed /r/n")));
}
kCount = rand()%5; //随机数对5取模,分成5个执行路径
switch(kCount)
{
case 0:break;
case 1:break;
case 2:break;
case 3:break;
case 4:break;
default:break;
}
Sleep(20*1000); //每个路径有20S的时间来观察执行结果,并验证
}
return TRUE;
}
(2)WaitForSingleObject带有限时间
初始化:
Nled_Test_Event = CreateEvent(NULL,TRUE,FALSE,NULL); //有限时间中,事件无论真假线程都会执行下去,所以忽略手工复位
CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)Nled_Test_Thread,0,0,NULL);
线程函数:
DWORD WINAPI Nled_Test_Thread()
{
int status;
int kCount;
srand(1); //以1为基准值,产生随机数种子。种子只产生一次
while(1) //事件为真,每次马上执行;事件为假,20S后再执行,总之都会执行
{
status = WaitForSingleObject(Nled_Test_Event,20*1000); //就算事件无效,线程也会每20S执行一次
if(status == WAIT_FAILED)
{
RETAILMSG(1, (TEXT("Nled_Test_Thread:Create failed /r/n")));
}
kCount = rand()%5;
switch(kCount)
{
case 0:break;
case 1:break;
case 2:break;
case 3:break;
case 4:break;
default:break;
}
}
return TRUE;
}
- 基于线程的WINCE测试程序
- 基于线程的WINCE测试程序
- 基于Wince的计算器程序
- 简单的线程测试程序
- 基于UDP的单线程网络点对点数据包收发测试程序
- WinCE中为基于对话框的程序动态增加菜单
- 基于S3C2410A的WINCE下Stepldr程序移植详细分析
- WINCE freescale CAMERA 测试程序
- WinCE下测试程序运行时间的方法
- 用vs2008开发基于wince的程序如何直接运行在wince上
- 基于wince的录音机
- WinCE 的线程问题
- 基于线程的二维刀削程序
- 基于i.MX233的UART测试程序
- 基于C52的MMA7455测试程序
- 基于android下测试串口的程序
- 基于android下测试串口的程序
- 基于Qt4.7的ADC测试程序
- WIFI之四:WINCE 500上WIFI工具的编写
- 计算机类核心期刊排名
- 使用DATE时注意
- WIFI之三:WIN MOBILE平台上的88W8688驱动
- 黑马程序员-java-枚举
- 基于线程的WINCE测试程序
- 【android学习之九】——数据存储1:SharedPreferences,Files,网络
- C#将文本框中的字符串导出至txt文件中
- STL中vector转数组(实际是数组的指针)(zz)
- android Launcher——拖放功能深入研究
- WINCE的RTC驱动
- oracle常用SQL语句
- UART之三:PXA平台WIN MOBILE的UART底层
- UBUNTU 安装bugzilla3