成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

菜鳥(niǎo)初學(xué)Java的備忘錄(三)

瀏覽:37日期:2024-06-25 13:39:46
內(nèi)容: 今天開(kāi)始學(xué)習(xí)Java中多線程的實(shí)現(xiàn).線程是一些可以并行的,獨(dú)立的執(zhí)行的代碼.之前我編的程序都只能做一件事情,也就是只有一個(gè)線程.多線程的編程就是可以將程序任務(wù)分成多個(gè)并行的子任務(wù),同時(shí)運(yùn)行,互不干擾.我對(duì)多線程的理解是從格斗游戲得來(lái)的.格斗游戲中兩人對(duì)打就是通過(guò)兩個(gè)線程來(lái)實(shí)現(xiàn)的吧,否則如何能夠你出你的招,我發(fā)我的沖擊波呢.(1月18日)突然想到一個(gè)問(wèn)題,補(bǔ)充一下.多線程是不是我們通常所說(shuō)的多任務(wù)呢?我的理解是,不能這樣說(shuō)也可以這樣說(shuō). 簡(jiǎn)單說(shuō)來(lái),多線程提供了一種在進(jìn)程內(nèi)部進(jìn)行多個(gè)線程并行調(diào)度的機(jī)制,而多任務(wù)則提供的是在一個(gè)操作系統(tǒng)內(nèi)部運(yùn)行多個(gè)進(jìn)程的機(jī)制. 多任務(wù)操作系統(tǒng)(如Windows)的基本原理是這樣的:操作系統(tǒng)將CPU的時(shí)間片分配給多個(gè)線程,每個(gè)線程在操作系統(tǒng)指定的時(shí)間片內(nèi)完成(注意,這里的多個(gè)線程是分屬于不同進(jìn)程的).操作系統(tǒng)不斷的從一個(gè)線程的執(zhí)行切換到另一個(gè)線程的執(zhí)行,如此往復(fù),宏觀上看來(lái),就好像是多個(gè)線程在一起執(zhí)行.由于這多個(gè)線程分屬于不同的進(jìn)程,因此在我們看來(lái),就好像是多個(gè)進(jìn)程在同時(shí)執(zhí)行,這樣就實(shí)現(xiàn)了多任務(wù).Whoops,真繞口. 如上,多線程和多任務(wù)是有很明顯的區(qū)別的.但是再想一下,在一個(gè)應(yīng)用程序內(nèi)實(shí)現(xiàn)多線程不也是靠CPU分配時(shí)間片嗎?既然原理是相同的,那么多線程也可以說(shuō)是多任務(wù)的.一個(gè)Java程序啟動(dòng)后,就已經(jīng)有一個(gè)線程在運(yùn)行,我們可以通過(guò)下面的例子來(lái)初步建立一個(gè)線程的實(shí)際印象class testthread{ public static void main(String args[]){ Thread t=Thread.currentThread(); t.setName('This Thread is running'); System.out.println('The running thead:'+t); try{ for(int i=0;i
標(biāo)簽: Java
相關(guān)文章: