我编了一个循环发送和接收判断的程序,用于串口通信,
并设置了一个定时20秒的程序,如果20s内不满足条件1 则自动退出这个循环。开定时器;
repeat
//这个地方为什么一定要加上showmessage('');
发送程序
sleep(500);
接收程序;
判断程序;//判断内符合收敛则置条件1标志until 条件1;问题出在一定要在repeat后面加一个showmessage,否则程序必然死机。请问这是什么原因啊?
并设置了一个定时20秒的程序,如果20s内不满足条件1 则自动退出这个循环。开定时器;
repeat
//这个地方为什么一定要加上showmessage('');
发送程序
sleep(500);
接收程序;
判断程序;//判断内符合收敛则置条件1标志until 条件1;问题出在一定要在repeat后面加一个showmessage,否则程序必然死机。请问这是什么原因啊?
showmessage只要出现,程序是不是会暂停,直到按下确定键?
使用意义:
在大量的循环运算,又不想使用多线程时,为了计算机在运算时能响应用户的操作,又不破坏指令的执行.repeat
Application.ProcessMessages;
发送程序
sleep(500);
接收程序;
判断程序;//判断内符合收敛则置条件1标志
vCount := GetTickCount;
while (vCount + 5000 > getTickCount) do begin
...
Application.processMessage;
end;