فقط در مورد MultiThread توضیح میدم.
MultiThread در حقیقت این امکان رو به ما میده که , برنامه ما در آن واحد دو دستور العمل را انجام بدهد. در حالت عادی برنامه دارای یک Thread است و در یک زمان فقط یک دستور اجرا می شود.
از MultiThread در جاهای مختلفی استفاده می شود. مثلا در بازی ها در برنامه های سه بعدی حتی در خود برنامه دلفی و...
یکی از ساده ترین کاربردهای آن استفاده به صورت زمان سنج (Timer) است. مزیت این زمان سنج به زمان سنج استاندارد دلفی این است که دستورات زیاد در ان باعث تو قف طولانی مدت برنامه نمی شود.
من کد این زمان سنج را برای در بهتر در اینجا می آورم:
TTimerThread=class(tThread)
Private
fInterval:Cardinal;
fOnExecute:TNotifyEvent;
fEnabled: Boolean;
Protected
Procedure Execute;override;
Public
constructor Create(CreateSuspended: Boolean);
destructor Destroy; override;
Published
Property Intervals:Cardinal Read fInterVal Write fInterval;
Property OnExecute:TNotifyEvent Read fOnExecute Write fOnExecute;
Property Enabled :Boolean Read fEnabled Write fEnabled;
end;
implementation
{ TTimerTread }
constructor TTimerThread.Create(CreateSuspended: Boolean);
begin
inherited;
fEnabled:=true;
end;
destructor TTimerThread.Destroy;
begin
inherited;
end;
procedure TTimerThread.Execute;
begin
inherited;
While (not Terminated) do begin
If (fInterval=0)or(fEnabled=false) then continue;
If assigned(fOnExecute) then
fOnExecute(self);
sleep(fInterval);
end;
end;
موفق باشی. :lol: