uthreadedinterfaces.pas

来自「多线程调用的范例」· PAS 代码 · 共 69 行

PAS
69
字号
unit uThreadedInterfaces;

interface
  
type

  IThreadedCallback = interface
  ['{4BBBBB77-1341-4597-B731-BB2655F8F1C7}']
    function GetMin: integer;
    procedure SetMin(AValue: integer);
    property Min: integer read GetMin write SetMin;

    function GetMax: integer;
    procedure SetMax(AValue: integer);
    property Max: integer read GetMax write SetMax;

    function GetProgress: integer;
    procedure SetProgress(AValue: integer);
    property Progress: integer read GetProgress write SetProgress;

    function GetStatusMessage: string;
    procedure SetStatusMessage(AValue: string);
    property StatusMessage: string read GetStatusMessage write SetStatusMessage;

    procedure ModuleFinished;

  end;

  IThreadedDataModule = interface
  ['{CD367799-3F0B-46D4-89DE-E8E6CD5F5F92}']
    function GetCallback: IThreadedCallback;
    procedure SetCallback(AValue: IThreadedCallback);
    property Callback: IThreadedCallback read GetCallback write SetCallback;
    function GetParamByName(AParam: string): string;
    procedure SetParamByName(AParam, AValue: string);
    property ParamByName[AParam: string]: string read GetParamByName write SetParamByName;
    procedure Execute;

    procedure Pause;
    procedure Resume;
    procedure Terminate;
  end;


  IThreadedManager = interface
  ['{2D9215CE-C76C-4468-AF91-6CC9D9D6B49C}']
    function ThreadedDatamodule(ThreadIndex: integer): IThreadedDataModule;
  end;

  IThreadedStatusManager = interface
  ['{0E0CDF80-9C09-4D61-B6BC-6C0AE67A9DA1}']
    procedure ThreadCreated(ThreadIndex: integer);
  end;






  // DLL Exported methods
  DataModuleCountFunc = function : integer;
  DataModuleFunc = function (index: integer): IThreadedDataModule;
  DataModuleNameFunc = function (index: integer): string;


implementation

end.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?