Delphi 线程类模板  
官方Delphi 学习QQ群: 682628230(三千人)
频道

Delphi 线程类模板


unit uTest;


interface


uses

  System.SysUtils, System.Classes;


type

  TUserBase = class(TThread)

  protected

    procedure Execute; override;

  public

    constructor Create;

    destructor Destroy; override;

  end;


var

  G_UserBase: TUserBase;   // 在外部就用这个全局变量来创建释放和使用其中的数据


implementation


{ TUserBase }


constructor TUserBase.Create;

begin

  // 不添加这一句执行这个 Create 会报错,有的会提示什么【无效句柄 或 无法在正在运行或挂起的线程上调用 Start】

  inherited Create(True);

  // False和空表示创建线程后立即执行 Execute

  // True 表示创建成功后挂起,不会立即执行 Execute,创建成功后需要 .Start 才会执行 Execute


  // 然后关于类中需要创建的东东,就在这个下面进行创建就好了


end;


destructor TUserBase.Destroy;

begin


  // 这里想必都懂,相关需要释放的代码写在上面

  inherited;

end;


procedure TUserBase.Execute;

begin

  inherited;

  // 这个线程类创建成功后,相关的逻辑代码可以在这个方法中

  // 例如:这里可以放一些只需要执行一次的代码


  while not Terminated do

  begin

    // 这个里面可以写一些需要一直要被执行的逻辑

    // 例如:这里可以放一些需要往死里循环执行的代码


    Sleep(500);  // 不能让往死里跑,小心电脑受不鸟,适当的休息休息

  end;

end;


end.


————————————————


原文链接:https://blog.csdn.net/qq_44111597/article/details/118802222



推荐分享
图文皆来源于网络,内容仅做公益性分享,版权归原作者所有,如有侵权请告知删除!
 

Copyright © 2014 DelphiW.com 开发 源码 文档 技巧 All Rights Reserved
晋ICP备14006235号-8 晋公网安备 14108102000087号

执行时间: 0.038959980010986 seconds