在lazarus使用匿名线程

匿名线程随建随用,很方便。使用TThread类的类方法创建TThread.CreateAnonymousThread创建,无须创建线程实例。

删除操作可能比较耗时,就是不耗时也不会显示界面图形元素的变化,可以将删除操作放在主线程,界面元素更新放在匿名线程,反过来也行。

  procedure showInfoA;
  begin
     TOfficeFM(MainFM.FindComponent('OfficeFM')).LabInfo.caption:='正在删除本级凭证库';
  end;

  TThread.CreateAnonymousThread(@showInfoA).Start; 

  MainDM.ZConnect.ExecuteDirect('delete from tbBillLib');         

注意:

1、lazarus语法与delphi有差别,这里必须取函数的地址。

2、ShowInfoA是单元全局函数,不能是窗口的成员函数。

 

posted @ 2023-02-06 14:54  仙侣步惊云  阅读(412)  评论(0)    收藏  举报