给线程发送消息让它执行不同的处理

unit Unit2;

interface

uses
System.Classes, Windows, Messages;

const
WM_DO = WM_USER + 1;

type
TDemoThread = class(TThread)
private
{ Private declarations }
protected
procedure Execute; override;
end;

implementation

{ TDemoThread }

procedure TDemoThread.Execute;
var
Msg: TMsg;
begin
{ Place thread code here }
while GetMessage(Msg, 0, 0, 0) do
begin
case Msg.message of
WM_DO:
; // do it
WM_CLOSE:
Break;
end;
Sleep(100);
end;

end;

你可能感兴趣的:(线程)