一个超难的题,我的一个高手朋友都没有办法.如下:在控制台(DOS)下实时的检测一个变量的改变,注意这里是控制台,没有消息这个概念.
解决方案 »
- 按1比1比例扫描的图片,如何将像索转为长度单位?
- 一个统计的问题!!我实在是没想到方法
- delphi 2005 如如何安装第三方控件?
- 怎样产生一个自定义消息,然后把消息分配给应用程序或窗口?
- 怪怪怪~在DELPHI中用F7运行可以循环~但用F8、F9或编译成EXE文件后就不循环了~
- keybd_event遇到的奇怪的问题
- 求教:在delphi中创建多级目录问题,例如:用户输入一行字符串目录,其实就是默认安装路径创建
- 急需DEPHI高手
- 如何利用程序实现将SQLSERVER7.0的数据在某一设定时间中进行数据备份(不用SQL自带的Maintenance Plan)
- 回车问题。
- 关于用adoquery存储blob型的问题,请高手指点!
- 比内急还急。project project1.exe raised excption。。。
消息还不如for循环。
处理消息还要靠循环,差别只是在于GetMessage没有消息的时候并不返回,这样没有消息的时候时间片就被系统窃取了。
你在for循环中释放时间片是一样的。
比如:
for ...
begin
// 做某些事
SleepEx(5, false);
end;
占用资源什么,那是因为你的代码没写好,不要怪循环
消息循环怎么不耗CPU?你可以用循环和Event对象,在循环里用WaitForSingleObject
G_DataChangeEvent : TSimpleEvent;
G_Data : Integer;...
Dec(G_Data);
G_DataChangeEvent.SetEvent;
///////////////////////////////////////////////////////////////////////////////
while True do
begin
WaitForSingleObject(G_DataChangeEvent.Handle,INFINITE);
G_DataChangeEvent.ResetEvent; WriteLn(G_Data);
end;//////////////////////////////////////////////////////////////////////////////////