帶
|l
第
12
章
多執行緒
(Thread)
到我辦公室來的人常常都會撞到一個吊在天花板上、大約十二英的長的黑
色物體,這其實是架
1/32
比例的
Bell
206B-111
Jet
Ranger
直昇機模
型。不過這個模型並沒有完全照著寶物仿製,像是機尾側面的螺旋槳就不
見了,而換成了一個放在機尾後方的推進式螺旋槳,以便能夠讀這個模型
繞著圓圓打轉。
這個模型直昇機的飛行方式是這樣的
首先打開電源,透過電子馬
達讓後方的推進式螺旋獎旋轉。不過光是靠這個螺旋槳所產生的衝力可是
不夠的,要讀直昇機「飛
J
起來,您得動手推它
-rl
巴,讓它能夠以懸掛它
自己的線作為半徑,繞著圓圓打轉。慢慢地,藉著螺旋樂的推力,它就可
以越飛越高,接近天花板了
1
可別小看這架模型,它可是
Ruediger
Asche
送我的!
Ruediger
和
我樣,都是為
MSDN
撰寫文章的技術作家,專精於
Windows
NT
的核
心底層,也就是常常因為表面
GUI
的光彩奪目而沒有人注意到的部份。
在這一個領域中,有一個
Ruediger
最為專精的主題就是多執行緒
(thread)
的程式設計,而這也正是這一章我們所要討論的課題。
想像
下,如果我們要撰寫直升機模型的模擬程式,那麼很可能會
探用多執行緒的方式。其中,一個執行緒專門負責處理使用者介面,以便
讓使用者可以控制直升機旋轉時的三維寮觀。而另外一個執行緒則是用來
在直升機繞著圈子飛、而且越來越接近天花板時,即時計算直昇機的
位置。
事實上,兜圈子旋轉的直升機並不見得一定得靠多執行緒才能模擬
的出來!多執行緒最吃香的地方,通常都是在程式需要針對使用者介面做
[雪Eit
齊腰]
401