关于服务的一个问题(100分)

  • 主题发起人 主题发起人 huhu7451
  • 开始时间 开始时间
H

huhu7451

Unregistered / Unconfirmed
GUEST, unregistred user!
关于服务的一个问题,注册服务并启动后,竟占用CPU99%资源,怀疑问题出在下面程序,
ss为serversocket,服务器端以服务形式与客户端通讯。
procedure Tps2.ServiceExecute(Sender: TService);
begin
try
SS.Port := 9000;
SS.Active := True;
while not terminated do
begin
servicethread.ProcessRequests(false);
end;
ss.Active:=false;
finally
end;
end;
 
你要使用Sleep
procedure Tps2.ServiceExecute(Sender: TService);
begin
try
SS.Port := 9000;
SS.Active := True;
while not terminated do
begin
servicethread.ProcessRequests(false);
end;
Sleep(3000)//3秒.
ss.Active:=false;
finally
end;
end;
 
to dongberlin:
不对呀,还是老样子,CPU占用99%。
 
在while循环中sleep!!!
 
to jackliew:
在while循环中sleep,我用过,反应速度很慢的。
 
啊呀,我也碰到过,后来解决了,具体过程忘了 :((
 
您是怎么解决的呀,我也是出现你一样的问题呀。
加了Sleep还是不行.
我是用了线程的。
 
后退
顶部