?? delphi下的多線程程序設(shè)計 (2000年11月29日).txt
字號:
DELPHI下的多線程程序設(shè)計 (2000年11月29日)
本站更新 分類: 作者:Delphi Club 推薦: 閱讀次數(shù):598
(http://www.codesky.net)
--------------------------------------------------------------------------------
我們知道,win95或winNT都是“多線程”的操作系統(tǒng),在DELPHI2.0中,我們可以充分利用這一特性,編寫出“多線程”的應(yīng)用程序。
對以往在DOS或16位windows下寫程序的人來說,“多線程”仍然是陌生的,但如同以前我們從DOS下的單任務(wù)過渡到windows3.1下的多任務(wù),如今我們又必須過渡到“多線程”領(lǐng)域,畢竟計算機(jī)時代是在不斷發(fā)展的。不過,幸運的是,在DELPHI2.0下進(jìn)行多線程程序設(shè)計并不需要我們?nèi)W(xué)習(xí)龐大的WIN32API函數(shù),我們可以利用DELPHI下標(biāo)準(zhǔn)的多線程類TThread來完成我們的工作。
TThread是一個abstract(抽象)類,也就是說,并不需要根據(jù)TThread來聲明變量(而且根據(jù)TThread聲明的變量也是完全無用),我們要做的是把TThread作為基類,用繼承的形式來生成子類。實際上,根據(jù)TThread來寫多線程應(yīng)用程序是非常容易的。
下面就是一個基本的繼承TThread生成的多線程類。
QuerThrd.Pas
unitQuerThrd;
interface
uses
Classes,DBTables;
type
TQueryThreadΚclass(TThread)
private
fQuery:tQuery;
protected
procedureExecute;override;
public
constructorCreate(Suspended:Boolean;Query:
TQuery);
end;
implementation
constructor
TQueryThread.Create(Suspended:Boolean;Quer
y:TQuery);
begin
inheritedCreate(Suspended);
fQuery:ΚQuery;
FreeOnTerminate:ΚTrue;
end;
procedureTQueryThread.Execute;
begin
fQuery.Open;
end;
end.
在上面這個簡單的例子中,我們構(gòu)造了一個TThread的子類TQuery
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -