Delphi7_VCL线程的使用(一)

1、TThread类的属性

  (1)FreeOnTerminate属性

  该属性用于指定当前的线程终止时是否自动删除线程对象。默认值为true。

  语法:

 1 Property FreeOnTerminate:Boolen; 

  (2)priority属性

  该属性用设置线程的优先级,线程的优先级是对同一进程的其他优先级而言的。

  语法:

1 Property priority:TThreadPriority; 

  指定线程的优先级为低,代码如下:

1 var
2     SecondProcess:TMyThread; 
3 begin 
4     SecondProcess:= TMyThread.Create(True);        
5     SecondProcess.Proroty:= tpLower;
6     SecondProcess.Resumer;;
7 end

  (3)Return Value属性

  当线程终止时,用该属性为其他线程传递一个返回值

  语法:

1 Property ReturnValue:Integer;

  (4)Suspended属性

  该属性用于指明线程是否处于挂起状态

  语法:

1 Property Suspended:Boolean;

  (5)Terminated属性

  在线程运行时,如果将该属性设置为True,则应将线程终止;

  语法:

1 Property Terminated:Boolean;

  当线程未终止时执行循环,代码如下:

 1 while(not Terminated) and (ClientSocket1.Active)do
 2     begin
 3         try
 4             GetNextRequest(buffer);
 5             TheStream.Write(buffer,Length(buffer) + 1);
 6            except
 7             if not(ExceptObject is EAbort) then
 8                 Synchronize(Handle ThreadException);
 9            end;
10     end;

  (6)ThreadID属性

  线程的ID。线程的唯一标识

  语法:

1 Property ThreadID:Thandle;

  (7)Handle属性

  线程的句柄。

  语法:

1 Property Handle:Thandle;

                                                                                               2021-07-26

posted @ 2021-08-07 15:03  梵者  阅读(379)  评论(0编辑  收藏  举报