




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第九章線程1目錄Java中的線程線程的生命周期Thread的子類創(chuàng)建線程使用Runable接口線程的常用方法線程的優(yōu)先級線程同步在同步方法中使用wait()、notify和notifyAll()方法掛起、恢復和終止線程本章小結2線程的概念進程和線程的區(qū)別(Example9_11)進程一個獨立程序的每一次運行稱為一個進程,例如用字處理軟件編輯文稿時,同時打開mp3播放程序聽音樂,這兩個獨立的程序在同時運行,稱為兩個進程設置一個進程要占用相當一部分處理器時間和內存資源大多數(shù)操作系統(tǒng)不允許進程訪問其他進程的內存空間,進程間的通信很不方便,編程模型比較復雜
進程通信方式共享存儲器系統(tǒng)、消息傳到機制、管道通信3線程一個程序中多段代碼同時并發(fā)執(zhí)行,稱為多線程通過多線程,一個進程表面上看同時可以執(zhí)行一個以上的任務——并發(fā)創(chuàng)建線程比創(chuàng)建進程開銷要小得多,線程之間的協(xié)作和數(shù)據(jù)交換也比較容易(進程獨站資源)線程間共享資源(內存、代碼、數(shù)據(jù))有利于并行處理線程的概念(續(xù))4線程的狀態(tài)與生命周期新建:當一個Thread類或其子類的對象被聲明并創(chuàng)建時,新生的線程對象處于新建狀態(tài)。此時它已經(jīng)有了相應的內存空間和其他資源。就緒狀態(tài):線程等待CPU運行狀態(tài):start()方法開始執(zhí)行中斷(阻塞)狀態(tài):sleep(),wait(),I/O完成or發(fā)布I/O請求sleep():使當前線程進入等待狀態(tài),參數(shù)設定其等待時間wait():使當前線程進入等待狀態(tài),調用nofify(),ornotifyAll(),使其重新進入線程等待隊列死亡:run()方法完成stop()方法被調用5LifeCycleofThread6誕生狀態(tài)線程剛剛被創(chuàng)建就緒狀態(tài)線程的start方法已被執(zhí)行線程已準備好運行運行狀態(tài)處理機分配給了線程,線程正在運行阻塞狀態(tài)(Blocked)在線程發(fā)出輸入/輸出請求且必須等待其返回遇到用synchronized標記的方法而未獲得其監(jiān)視器暫時不能進入執(zhí)行時休眠狀態(tài)(Sleeping)執(zhí)行sleep方法而進入休眠死亡狀態(tài)線程已完成或退出線程的幾種基本狀態(tài)(續(xù))7主線程:Java應用程序總是從主類的main方法開始執(zhí)行。當JVM加載代碼,發(fā)現(xiàn)main方法之后,啟動的線程稱作“主線程”,該線程負責執(zhí)行main方法。在main方法的執(zhí)行中再創(chuàng)建的線程,就稱為程序中的其它線程。如果main方法中沒有創(chuàng)建其他的線程,那么當main方法執(zhí)行完最后一個語句,JVM就會結束Java應用程序。如果main方法中又創(chuàng)建了其他線程,那么JVM就要在主線程和其他線程之間輪流切換,main方法即使執(zhí)行完最后的語句,JVM也不會結束程序,JVM一直要等到程序中的所有線程都結束之后,才結束Java應用程序。8Java中創(chuàng)建線程的兩種方法Thread類的子類創(chuàng)建線程對象,子類重寫Thread類中的run()方法使用Thread類直接創(chuàng)建線程對象,但需要使用Runable接口9Th唯re貼ad類Th雨re拆ad類在Ja才va程序唇中創(chuàng)顫建多蒜線程押的方刃法之犁一是消繼承Th辨re奪ad類封裝猛了Ja昂va程序枕中一智個線辟程對狐象需招要擁境有的枝屬性閉和方買法從Th枕re畢ad類派費生一公個子鑼類,民并創(chuàng)追建這書個子各類的燃對象浪,就該可以碧產(chǎn)生勒一個刪新的塑線程牢。這疲個子鑼類應暗該重蠢寫Th疊re柳ad類的ru原n()方法宏,在ru摟n方法英中寫你入需惠要在焰新線建程中隔執(zhí)行言的語就句段梳。這雀個子牢類的漏對象總需要族調用st身ar幼t方法浴來啟返動,捆新線敞程將殃自動呆進入ru偏n方法奴。原返線程倍將同舌時繼渡續(xù)往田下執(zhí)親行它位癥于ja割va符.l灰an懷g包中邁,因忘而程浴序開捧頭不歲用im員po唐rt任何膨包就皂可直切接使悟用例子簽:Ex疼am繁pl狹e9竿_1昂.j會av樸a10pu寒bl篇ic鄉(xiāng)豐c怨la繞ss股E筑xa聯(lián)mp艇le口9_嬌1{嗓p她ub全li從c竿s物ta放ti摟c像vo派id芝m鉤ai有n(龍St概ri驢ng材a粉rg縱s[誓]){龍L魚ef撿th村an拌d課le吳ft晝;Ri松gh床th圍an聚d橋ri漢gh杏t;le猶ft掌=n聞ew您L放ef室th尋an泡d(彈)蠟;零/贏/創(chuàng)建非線程ri灰gh腸t=展ne玻w深Ri觸gh術th局an層d(均);le童ft惕.s依ta課rt炸()喉;ri完gh長t.蔑st猴ar怖t(楊);fo鞠r(健in辣t濟i=恐1;返i<外=3閣;i徒++鋒){乳(塞"我是渴主線毅程")俊;}}}cl嘴as荒sLe纏ft符ha喂ndex露te遞nd袖sTh字re誦ad{豪p親ub暈li貧c父vo柱id濫r型un矩(){傲f腸or表(i程nt由i陵=1醒;i屆<=困3;就i+斥+){("我是汗左手拘線程")才;}}}cl曬as慌sRi泛gh含th微an附dex扒te衰nd或sTh呼re院ad{卵p量ub基li榆c獎vo勒id拐r扭un診(){蜻f聯(lián)or究(i族nt逃i貿=1猛;i會<=蘇3;員i+覺+){蓬(恢"我是謹右手至線程")鑼;}}}我是濾主線袖程我是節(jié)主線系程我是蘆主線態(tài)程我是杰左手身線程我是馬左手若線程我是靠左手液線程我是討右手帥線程我是垮右手敢線程我是盟右手衫線程11Th倒re見ad類(續(xù))在新桂線程景中完接成計妹算某氧個整漿數(shù)的吊階乘pu犬bl唯ic饅c舉la囑ss燦E筋x8致_1越{pu經(jīng)bl你ic扮s聰ta蹤蝶ti天c肯vo害id移m絹ai句n(忙S晃tr欠in魔g弟[]局a跌rg村s貿)盒{Sy伏st壤em秋.o踢ut予.p甘ri拔nt懷ln婦("撥ma畏in唇t秋hr虛ea森d楊st嚷ar袖ts請")毫;Fa唱ct陜or網(wǎng)ia摧lT滴hr白ea特d剖th朋re辣ad論=n至ew堅F趕ac楚to帶ri慶al盡Th柿re鋸ad背(1搜0)賢;th赴re嫌ad對.s慌ta技rt不()莖;Sy忍st接em牽.o丙ut慌.p遭ri雹nt已ln午("令ma渴in樓t教hr景ea味d悲en植ds殲"質)僵;}}cl燭as揪s妥Fa訂ct窮or場ia埋lT反hr柳ea驕dex宴te啦nd咽sTh密re宜ad{pr寸iv臟at話e斥in淘t筑nu勿m;pu握bl柜ic億F硬ac繞to屠ri牧al小Th錫re膠ad椒(流in而t叛nu宰m談){th動is飯.n備um吳=n莖um飼;}12pu蝴bl醫(yī)ic慌v右oi質d飼ru骨n(駁)焦{in鄙t曉i=繁nu舉m;in罰t朱re獲su匆lt及=1愛;Sy短st畫em桶.o習ut姨.p窗ri傅nt丙ln眨("共ne忘w睜th禍re想ad逮s殲ta喬rt想ed薄"核);wh頂il螺e(情i>商0)呀{re字su嫩lt昆=r舊es油ul興t*虧i;i=弊i-悉1;}Sy湖st坐em彩.o熔ut句.p烈ri產(chǎn)nt楚ln鏈("舞Th眼e敵fa駝ct虎or雜ia睬l們of化"復+n偏um關+"須i課s勁"+島re巖su貝lt私);Sy亞st呢em購.o樹ut觀.p沃ri糾nt飲ln補("志ne執(zhí)w詞th純re損ad居e蠻nd星s"另);}}運行消結果ma躲in章t憶hr禍ea嫂d潔st申ar拆tsma慕in坊t穗hr嗓ea紐奉d吵en唯dsne脊w規(guī)th嫌re柏ad眾s器ta撤rt悅edTh惰e魚fa趴ct鉤or遭ia刮l惡of智1冬0虎is艷3淺62殖88突00ne旬w辜th聲re推ad地e批nd粗sTh扣re授ad類(續(xù))13結果瓜說明ma搞in線程零已經(jīng)龍執(zhí)行撒完后袖,新綱線程躺才執(zhí)券行完ma腦in函數(shù)播調用th妹re裂ad笛.s刊ta開rt垂()方法燥啟動乎新線挎程后規(guī)并不辦等待含其ru陜n方法坊返回辦就繼問續(xù)運課行(執(zhí)行()勝),th露re四ad格.r叛un函數(shù)丑在一護邊獨柿自運晶行,散不影半響原惹來的ma鼠in函數(shù)騙的運灰行源程荷序修敗改如果幫啟動鏟新線岡程后勒希望棵主線莫程多遍持續(xù)鞏一會吼再結部束,府可在st岸ar慰t語句疊后加遷上讓越當前逝線程眼(ma射in)休摔息1毫秒乳的語輔句:tr壺y講{棵T勸hr倚ea柜d.趕sl徐ee暗p(旱1)乞;侵}把c索at旬ch貼(E兆xc向ep樣ti樓on頓e凡){買};Th盞re螺ad類(續(xù))14修改荷后運旬行結繞果ma祖in協(xié)t忙hr誦ea焦d雜st新ar至tsne斬w椅th轎re罰ad委s點ta葛re嫩dTh欄e金fa戶ct師or絹ia則l牢of而1奧0眨is股3張62浮88主00ne喘w心th禿re扯ad茅e行nd蘭sma屬in鳴t屯hr幕ea攝d幅en層ds運行柔結果告說明新線阿程結妖束后ma挪in線程除才結倉束例子Ex徑8_刃1.什ja喇vaTh填re豪ad類(續(xù))——例8_臥1修改輩后運測行結宴果15Th卷re桐ad類(續(xù))——常用AP撒I函數(shù)名稱說明publicThread()構造一個新的線程對象,默認名為Thread-n,n是從0開始遞增的整數(shù)publicThread(Runnabletarget)構造一個新的線程對象,以一個實現(xiàn)Runnable接口的類的對象為參數(shù)。默認線程名為Thread-n,n是從0開始遞增的整數(shù)publicThread(Stringname)構造一個新的線程對象,并同時指定線程名publicstaticThreadcurrentThread()返回當前正在運行的線程對象publicstaticvoidyield()使當前線程對象暫停,允許別的線程開始運行publicstaticvoidsleep(longmillis)使當前線程暫停運行指定毫秒數(shù),但此線程并不失去已獲得的鎖旗標。16publicvoidstart()啟動線程,JVM將調用此線程的run方法,結果是將同時運行兩個線程,當前線程和執(zhí)行run方法的線程publicvoidrun()Thread的子類應該重寫此方法,內容應為該線程應執(zhí)行的任務。publicfinalvoidstop()停止線程運行,釋放該線程占用的對象鎖旗標。publicvoidinterrupt()打斷此線程publicfinalvoidjoin()在當前線程中加入調用join方法的線程A,直到線程A死亡才能繼續(xù)執(zhí)行當前線程publicfinalvoidjoin(longmillis)在當前線程中加入調用join方法的線程A,直到到達參數(shù)指定毫秒數(shù)或線程A死亡才能繼續(xù)執(zhí)行當前線程Th龍re沿ad類(續(xù))——常用AP錫I函數(shù)17publicfinalvoidsetPriority(intnewPriority)設置線程優(yōu)先級publicfinalvoidsetDaemon(Booleanon)設置是否為后臺線程,如果當前運行線程均為后臺線程則JVM停止運行。這個方法必須在start()方法前使用publicfinalvoidcheckAccess()判斷當前線程是否有權力修改調用此方法的線程publicvoidsetName(Stringname)更改本線程的名稱為指定參數(shù)publicfinalbooleanisAlive()測試線程是否處于活動狀態(tài),如果線程被啟動并且沒有死亡則返回trueTh鄰re叫ad類(續(xù))——常用AP換I函數(shù)18創(chuàng)建3個新侍線程澇,每像個線測程睡洽眠一閉段時綿間(0~6秒)謹,然搬后結往束pu役bl襪ic撈c蜘la蘋ss舒E毀x8額_2很{pu厲bl鄉(xiāng)豐ic撞s晨ta燈ti長c何vo否id波m右ai松n(播S罪tr習in簽g鄙[]故a億rg保s田)勁{//創(chuàng)建張并命非名每跌個線具程Te屬st務Th都re盾ad為t哄hr件ea碗d1笛=末n濤ew鄰T姨es燒tT進hr尖ea摟d(躁"紫th羞re勢ad熔1"碧)茅;Te時st向Th麥re外ad岸t躍hr冰ea縮慧d2會=奮n辟ew迅T影es暮tT蜻hr孕ea暫d(竄"頂th您re貪ad藏2"倒)如;Te乞st川Th陪re遭ad獸t夜hr匙ea畏d3姨=料n廉ew饅T勵es掛tT簡hr鬧ea區(qū)d(驗"蜓th賭re縣ad柏3"耀)洞;(劣"S橋ta秋rt詞in盼g傍th負re溝ad疾s"約)句;th憤re吉ad辭1.航st雄ar鏈t(愈);口/由/啟動磚線程1th捆re船ad頂2.作st利ar狗t(濤);復/繭/啟動弦線程2th丙re墳ad床3.蓋st爸ar勿t(現(xiàn));殊/籠/啟動匯線程3(佩"T雄hr授ea千ds圈s值ta走rt輩ed頑,蠟ma逗in晃e倒nd福s\屋n"丹)炕;}}Th上re晶ad類(續(xù))——例8_小219cl廚as腸s濟Te森st府Th峰re打adex旨te奔nd戚s挑Th淹re掉ad{pr黨iv憂at角e畫in控t錫sl訴ee失pT央im權e;pu跑bl述ic縫T姿es克tT叫hr晴ea騾d(率S旗tr吳in脅g煉na貨me磚)絨{su拾pe男r(寸n神am風e賠);纖//調用巧父類溉構造多函數(shù)微為線婆程命墓名sl埋ee胳pT絲式im挪e雹=姿(迎in角t獎)橫(球Ma腸th明.r禿an培do棒m(舟)奶*好60統(tǒng)00默)譯;}pu舞bl鹿ic葉v相oi留d餐ru微n(欠)柱{tr徒y(tǒng)滋{(ge蔑tN曲am貓e(兔)價+扔"緩go泥in齊g游to崗s饑le希ep拒f劉or鞠"洋+仰s苦l(xiāng)e慰ep政Ti袍me圖)弊;Th株re癢ad孔.s栗le身ep棟(慘sl牢ee幣pT巴im糊e圍);//線程排休眠}ca費tc喪h布(殿In候te教rr滴up捏te婚dE學xc無ep慈ti倡on魔e畜xc底ep爸ti孔on反)炕{致};(夏ge福tN拆am逗e(界)權+呀"僚fi另ni護sh螞ed谷"}}Th更re惱ad類(續(xù))——例8_釋220運行視結果St樣ar艷ti襖ng犧t大hr貼ea早dsTh滑re碼ad貿s鋸st玩ar償te內d,儲m環(huán)ai彈n受en鑄dsth裂re蛇ad鄰1適go暈in羨g襲to旺s嫂le版ep殲f錫or35示19th孫re尾ad猛2呢go串in屠g杜to蜘s沫le夕ep仇f玩or16蠻89th蓄re披ad溪3瞇go無in疑g奴to榜s難le誰ep挽f筋or55段65th按re步ad貫2纖fi帳ni役sh或edth閉re派ad鏟1尸fi跳ni鉛sh廊edth腎re錘ad瞧3辟fi辨ni會sh優(yōu)ed說明由于阻線程3休眠毀時間經(jīng)最長妄,所棉以最怪后結閥束,牽線程2休眠劉時間吉最短埋,所屈以最殘先結單束每次賤運行鍬,都巴會產(chǎn)絮生不奸同的衡隨機姜休眠繩時間罩,所達以結跪果都罰不相駕同Th盡re餅ad類(續(xù))——例8_冰2運行河結果21Ru今nn悄ab孟le接口Ru學nn貿ab松le接口在編疤寫復眼雜程經(jīng)序時蠢相關野的類底可能爭已經(jīng)障繼承靠了某池個基珍類,做而Ja好va不支目持多杰繼承童,在碗這種給情況庭下,掠便需冰要通侍過實忘現(xiàn)Ru哭nn鞭ab頸le接口允來生徐成多營線使用Th假re后ad創(chuàng)建唯線程株對象仆時,殘通常垮使用逝的構擴造方顧法是脂:Th壺re庸ad(Ru忠nn骨ab音le蹈t鞭ar壇ge猜t)該構穗造方翠法中殘的參煩數(shù)是移一個Ru裹nn購ab戲le類型陰的接信口,拖因此繭,在雪創(chuàng)建建線程對象允時必繭須向構午造方域法的丑參數(shù)具傳遞檢一個腸實現(xiàn)Ru晴nn旨ab嘆le接口賭類的肝實例,該實雜例對隸象稱途作所我創(chuàng)線宰程的目標識對象.當線至程調播用st眠ar兵t方法芝后,嘗一旦但輪到匠它來斧享用CP萄U資源會,目僅標對蘿象就彎會自砌動調婆用接嘗口中胡的ru目n方法竟(接社口回織調).對于罵使用抱同一橡目標馬對象懼的線哥程,冒目標付對象去的成捧員變主量自糕然就診是這劇些線籠程的性共享萌數(shù)據(jù)社單元不同ru累n(繭)方法跳中的摔局部肝變量少互不秒干擾寶。修改Ex筒8_查1.綠ja壁va例子座:wo翅rk途sp曉ac附e/張Th簡re姿ad烤De辨mo杜2_燃2.繭ja化va(ja滲va輛20盞06但/e拾xa螺mp絡le羽9/堤Th匪re習ad腿De按mo膽1_兔1,悲Th努re殺ad稈De培mo設2_洋2)例子應:Ex友am陳pl溝e9喉_3自.j勝av編aTe頂st牲Th兔re武ad莊e童xt造en穗dsTh蜂re顛ad{….春.}Te雀st麥Th渴re歉ad儀i保mp石le挖me纏nt碌s田Ru屢nn麥ab葡le{ne誓w窄Th糖re晴ad貫(R鋪un寒na藥bl活e害th鞋).遠st耕ar逗t}22使用Ru截nn么ab暗le接口棚實現(xiàn)Ex屯8_括1功能(使用慮一個蔑目標司對象)pu苦bl寨ic護c鎖la父ss呆E習x8首_1拘{pu抽bl撐ic鬼s狂ta泊ti倆c幫vo加id浪m梢ai陸n(左S筑tr綁in虧g呀[]儉a縫rg泄s扭)到{Sy障st原em攀.o終ut虧.p片ri葵nt望ln裹("效ma冷in綿t股hr宏ea種d園st虜ar鵲ts隸")弦;Fa門ct活or勢ia助lT紐奉hr隊ea殃d浙t=廈ne快w使Fa后ct掩or砍ia廁lT膝hr棕ea剛d(究10輝);ne鵲w橫Th良re夕ad撤(t).沃st稱ar洋t(絮);//創(chuàng)建Th愈re偵ad對象Sy還st漿em苦.o填ut溪.p忌ri謠nt凍ln喉("羊ne臉w疏th哥re覺ad拴s陜ta瓶rt趴ed黑,m完ai通n唐th妹re費ad向e征nd妨s銹"義);}}Ru顫nn鉆ab閃le接口(續(xù))——例8_陜1_侮1Runnable接口類的實例23cl登as前s脾Fa數(shù)ct腎or止ia爆lT搜hr源ea辟d棉im仿pl共em舍en公tsRu衣nn棵ab芝le{pr烘iv莖at壺e己in擾t探nu及m;pu悠bl亦ic勁F葬ac椅to雙ri鉆al鍛Th古re緣瑞ad距(士in屢t戒nu奴m張){th無is闖.n婚um測=n龜um斬;}pu驢bl娃ic救v區(qū)oi擊d瘡ru滴n(付)腳{in林t堵i=窄nu蝦m;in意t仙re蜜su必lt搏=1蓋;wh修il丈e(西i>座0)姑{re另su稼lt茶=r公es莊ul役t*方i;i=漁i-容1;}Sy嬸st柿em廈.o揉ut論.p稻ri圓nt毀ln文("題Th耍e妥fa眼ct貧or綢ia劈燕l(xiāng)宅of倘"哭+n捷um籠+"晚i勢s稍"+嗎re尚su過lt鵲);Sy尚st姐em杠.o咱ut銳.p牽ri主nt守ln做("才ne謹w腦th剩re識ad咱e么nd架s"冤);}}Ru扇nn本ab矮le接口(續(xù))——例8_妻324使用Ru膽nn結ab醉le接口簽實現(xiàn)抖例8_簡2功能短(使腥用不哲同目個標對間象)pu宣bl松ic淡c與la謝ss貢E映x8蓬_4狠{pu訴bl距ic率s繭ta余ti憂c纖vo恩id怎m示ai毀n(猜S賞tr銹in揉g些[]湖a些rg面s需)煩{Te蒙st俘Th卻re隸ad肥t籮hr束ea丸d1惠=膠n射ew耽T索es抵tT陶hr但ea鞠d(揮);Te練st程Th漫re抄ad趣t損hr跳ea釘d2叮=本n伸ew聾T停es員tT掉hr憶ea臨d(促);Te夏st第Th攀re枯ad司t桃hr植ea桑d3框=甚n塘ew固T椒es普tT樸hr羨ea匪d(癢);(染"S豈ta停rt城in從g泥th杜re螞ad彈s"否)茅;ne及w要Th相re作ad講(t錄hr命ea過d1檢,"歸Th導re通ad匪1"積).掉st學ar篇t(梳);ne察w職Th典re急ad歸(t標hr萍ea附d2付,"羽Th活re姜ad理2"股).辜st炒ar疊t(提);ne憶w像Th珍re剪ad侵(t尼hr駕ea舟d3座,"床Th駁re棟ad角3"注).杏st青ar姿t(張);(會"T鑒hr蟲ea驢ds雕s捧ta績rt價ed寨,鉛ma浩in僑e貍nd明s\衣n"忠)系;}}Ru泳nn緒ab敘le接口(續(xù))——例8_津4傳遞一個實現(xiàn)Runnable接口類的實例,并啟動線程25cl冠as即s豎Te象st針Th端re理ad百i將mp粘le油me像nt輕s亭Ru埋nn靠ab蹈le招{pr徑iv仙at撥e鬧in劉t暢sl害ee況pT狂im剝e;pu貪bl笑ic仙T廊es補tT推hr脹ea安d(江){sl徐ee飯pT譯im激e備=杜(嫁in戀t澡)休(眼Ma耳th冰.r歷an漢do藏m(揮)鴉*瓜60郊00歉)詢;}pu款bl需ic綠v嶼oi礎d秒ru擔n(潮)坦{tr宣y諒{(Th得re掀ad煎.c棵ur野re課nt知Th窗re聯(lián)ad尾()車.g舒et福Na逗me牙()+橡"抗go停in摘g吸to壘s論le他ep是f嚇or炒"+獲sl國ee遣pT且im柱e樸);Th刃re嫂ad雁.s敘le摘ep鈔(晃sl辜ee提pT御im赤e穗);}ca搏tc籮h恩(解In體te菜rr拜up括te把dE物xc鐘ep預ti天on疫e叨xc燥ep憐ti密on照)檢{攝};(Th促re扎ad麥.c穩(wěn)ur信re筐nt呢Th累re雕ad秤()避.g漫et躁Na射me襪()+山"f鐘in快is捐he雕d"切)瞎;}}Ru銹nn懇ab葵le接口(續(xù))——例8_材4St軟ar山ti虎ng斯t貿hr竄ea淹dsTh告re批ad砌s篇st真ar深te廳d,赴m怕ai挖n攀en敲dsTh步re冬ad耕2欠go蛾in偽g揉to側s棗le心ep才f功or稀1傘49尊8Th敏re稼ad愚1愁go眼in今g吼to瓶s味le岸ep慚f吃or憐4燙54貢4Th吉re韻ad墓3晨go盡in宮g此to爬s零le乘ep鄉(xiāng)豐f詢or魯3臺25抹1Th室re聚ad簽2賊fi胸ni澆sh槳edTh頂re逮ad脅3林fi征ni口sh渡edTh融re裳ad折1星fi夠ni托sh梁ed26線程尖間的損數(shù)據(jù)宗共享代碼邁共享多個掀線程吐的執(zhí)透行代襖碼來住自同縮慧一個漫類的ru宣n方法巨時,腐即稱羊它們暗共享記相同贊的代才碼數(shù)據(jù)獸共享當共慕享訪上問相風同的退對象兆時,緞即它棵們共連享相安同的某數(shù)據(jù)不同僻線程窮的ru懇n(厘)方法迅中的局部賺變量互不濤干擾(Ex逐am背pl膏e9悟_5劑_1務.j綢av貓a)使用Ru雕nn翼ab個le接口譽可以賽輕松突實現(xiàn)玻多個莊線程彎共享冰相同拾數(shù)據(jù)紐奉,只尊要用拌同一該個實災現(xiàn)了Ru徹nn云ab查le接口塔的實提例作涂為參埋數(shù)創(chuàng)符建多害個線驗程即陣可挖(Ex勸8_劑5.渴ja閣va,p2蘭33撇-例9.稀3)27cl券as喜sEx烈am毯pl證e9昆_5廈_1{pu謝bl咱icst薦at英icvo懂idma炭in獅(S驅tr奪in影g踐ar甩gs森[]斜){Mo愧ve涂m鼠ov桐e禮=ne輛wMo葵ve冤()寬;ne填wTh善re韻ad巧(m雄ov肌e,銷"z糧ha昏ng鑒sa投n"嗽).羊st際ar斑t(雹);ne嶼wTh熔re鳥ad畜(m忠ov液e,只"給li寶si興")訓.s事ta襲rt啞()綿;}}28cl蒜as號sMo怖veim膽pl聞em腿en像tsRu蔥nn黑ab儉le{//堡i亞nt槍i君=0械;pu謙bl帶icvo喝idru貓n(畫){in所ti=鞋0;wh捐il偏e(i統(tǒng)<=敢5){if(T騰hr長ea濃d.cu拒rr詞en鄉(xiāng)豐tT弄hr衣ea塞d()茂.g查et掙Na坡me壟()笛.e艙qu竹al復s(室"z診ha孩ng拌sa悠n"遺)){獲i夜=i六+1授;Sy寸st雙em衣.ou暫t.p數(shù)ri埋nt壘ln儀(T杯h(huán)r蓄ea館d.cu湖rr談en幟tT禾hr便ea聰d()炮.g摧et腳Na坦me改()倦+"線程犧的局獅部變染量i=哈"+尼i)暫;}el搜seif(T帥hr研ea奴d.cu召rr春en瞎tT賢hr非ea玻d()顏.g怕et劍Na旱me倦()維.e隨qu生al沿s(蜻"l擺is炕i"禍)){堅i氣=i既+1適;Sy衛(wèi)st震em案.ou倆t.p恢ri稠nt敬ln蠻(T楊hr頌ea致d.cu才rr鄰en甲tT巾hr咸ea垮d()廈.g守et售Na見me湖()仍+"線程村的局奸部變欄量i=賽"+狠i)蘋;}tr踐y{茅T儀hr蹲ea己d.sl晨ee侍p(8目00艦);}ca參tc鼓h(I委nt久er街ru膨pt票ed曬Ex腔ce恐pt輸io哪n抖e)隸{}}}}29修改震例8_童4,只狀用一個Ru局nn痰ab笑le類型勵的對饒象為參先數(shù)創(chuàng)情建3個新危線程貪。pu歡bl櫻ic芬c腳la擱ss己E脫x8贊_5孩{pu光bl席ic讀s廉ta魯ti房誠c壞vo再id聯(lián)m詞ai持n(早S兵tr慌in崗g倡[]膊a曠rg暴s消)預{Te究st騰Th練re驕ad悅t溜hr痕ea傷do透bj瘋=揚n復ew沙T賊es絨tT蕩hr思ea財d(璃);(嗓"S休ta扮rt暖in莫g掃th壩re優(yōu)ad設s"董)顫;ne貌w星Th幅re遠ad遠(th轉re陵ad桃ob廳j,"狀Th沙re磚ad郵1"摟).膛st劣ar直t(親);ne這w寒Th俱re校ad投(th然re陪ad坑ob主j,"塔Th辱re穗ad刷2"法).麻st禁ar選t(濫);ne坦w乓Th讓re嬸ad嶼(th鍛re傭ad滅ob逼j,"另Th捕re痕ad爽3"發(fā)).報st扁ar柜t(晴);(刺"T革hr端ea咽ds撐s啞ta遷rt厭ed鉗,占ma寄in胸e挪nd選s\玩n"嗽)循;}}線程古間的宮數(shù)據(jù)控共享(續(xù))——例8_鬼530cl詢as逐s當Te蔽st廣Th紙re撞ad訂i老mp傾le忙me將nt儉s走Ru捎nn垮ab舍le福{pr魄iv甩at共e置in乎t惱sl取ee骨pT請im爆e;pu感bl午ic送T圓es滋tT遣hr闖ea勢d(化){sl健ee購pT欺im蘇e姻=舉(瞧in佛t罷)足(犯Ma桃th勿.r姑an盤do取m(敬)槐*公60汽00艇)睬;}pu吩bl辛ic勞v歲oi易d身ru斑n(熊){tr征y糠{(Th煙re葡ad桐.c債ur驅re固nt歉Th位re賢ad殿()鑼.g添et案Na恩me趁()壁+答"條g恭oi增ng丈t釣o類sl障ee塘p春fo駁r滾"頓+麗sl少ee梢pT堤im飄e事);Th第re挨ad筑.s頑le添ep塔(詳sl信ee錘pT澆im戶e論);}ca奪tc因h傍(贊In困te姻rr浸up知te突dE除xc駛ep真ti姻on加e鬧xc宜ep孔ti帥on賀)把{挖};(Th更re拉ad春.c罩ur索re壞nt預Th效re蝦ad砍()怠.g陪et筍Na決me杏()逐+庭"達fi氏ni甘sh恨ed屈"腦);}}線程央間的知數(shù)據(jù)莊共享(續(xù))——例8_抓531運行抄結果St揉ar晨ti減ng少t膏hr徹ea重dsTh惱re緒ad覆1渡go插in乖g撒to套s仰le根ep微f縣or泉9奮66Th始re銜ad儉2暑go姓in上g佛to貓s抹le脫ep憶f勝or幸9南66Th療re鬼ad仍s賣st芒ar狀te榮d,紛m柜ai認n揉en享dsTh載re楊ad叫3帶go篩in凡g遵to軌s萍le博ep乒f休or貫9鴿66Th針re遲ad最1攻fi顫ni喘sh愿edTh露re暴ad汁2沒fi潤ni炎sh梅edTh攔re聰ad扒3襪fi頭ni橡sh丙ed說明因為舍是用湖一個Ru樸nn皆ab承l(wèi)e類型港對象戀創(chuàng)建傷的3個新對線程齊,這通三個釀線程脆就共他享了涉這個渴對象尺的私溉有成械員sl嚼ee妨pT者im電e,在燃本次拌運行渠中,緩三個陣線程蝴都休尚眠了96差6毫秒線程非間的李數(shù)據(jù)跌共享(續(xù))——例8_翁5運行摟結果32pu逢bl濾ic識c班l(xiāng)a庫ss幻玉E纏x8我_6撲{pu窮bl壁ic結s黑ta件ti政c缺vo賓id鄙m聚ai烏n(番St善ri賭ng識[]版a杠rg煮s)岡{Se溫ll熄Ti冊ck俱et縫s糟t=墾ne鮮w青Se犁ll遮Ti經(jīng)ck消et外s(望);ne險w自Th徑re附ad賀(t捉).四st唐ar夸t(恰);ne致w瞎Th增re貞ad錘(t臨).啟st艙ar慌t(冤);ne經(jīng)w神Th館re曠ad怪(t班).駱st瀉ar券t(款);}}線程堆間的隔數(shù)據(jù)窯共享(實際忠應用)——例8_言6用三叉?zhèn)€線犬程模順擬三胡個售射票口抖,總涼共出觀售20鏈0張票-用3個線圾程模課仿3個售熊票口塌的售孔票行壯為-這3個線段程應厘該共忘享20免0張票耽的數(shù)踩據(jù)33cl敬as晃s埋Se進ll社Ti梢ck返et秋s灑im驗pl旺em鈔en傾ts宵R雷un排na嚴bl照e{pr載iv寒a(chǎn)t罰e僚in途t潤ti嘩ck哪et先s=亭20購0;pu構bl祝ic玩v單oi枯d指ru燭n(繞){wh紋il頑e(渠ti偏ck晴et巾s>貨0){(Th頑re熄ad曉.c啟ur欄re搬nt謀Th更re榨ad石()茶.ge師tN緊am牽e(始)難+"粱is罷s報el振li盯ng草t騙ic稱ke信t詞"+鳴ti禿ck米et庭s-熔-)秘;}}}線程罵間的艙數(shù)據(jù)救共享(續(xù))——例8_鑰634運行江結果艘選最盯后幾封行如質下Th溉re凝ad伴-2碗i活s殘se湖ll肥in舉g叮ti填ck則et校6Th厭re蜻ad犯-1啦i薄s竊se蛙ll隸in賢g桿ti蔽ck介et挪5Th盒re限ad軌-0妹i全s雅se帳ll昆in福g灰ti愧ck磨et屯4Th你re邊ad螞-2喬i淺s截se榨ll抖in堆g稍ti允ck啄et鳳3Th瓣re浴ad丈-1斷i坊s演se挽ll頓in呀g鄙ti冬ck每et張2Th友re脈ad暢-0席i程s賢se險ll渡in俱g皂ti勞ck填et懸1說明在這菜個例慎子中缸,創(chuàng)毅建了3個線販程,汪每個譯線程驅調用電的是同一理個Se甜ll啄Ti律ck放et淘s對象中的ru簽n(隊)方法捎,訪辱問的帽是同一朝個對旗象中坑的變挖量(ti筍ck幕et燦s)如果定是通工過創(chuàng)聰建Th迷re延ad類的吐子類攻來模退擬售貫票過蛇程,喘再創(chuàng)似建3個新繩線程鞠,則貼每個柜線程東都會舞有各績自的默方法俊和變炸量,餐雖然媽方法故是相獎同的協(xié),但季變量便卻是各有20刺0張票,因警而結唐果將杜會是臭各賣劃出20襪0張票須,和仿原意宏就不飼符了線程助間的學數(shù)據(jù)茅共享(續(xù))——例8_仿6運行屬結果35publicvoidstart()啟動線程,JVM將調用此線程的run方法,結果是將同時運行兩個線程,當前線程和執(zhí)行run方法的線程publicvoidrun()Thread的子類應該重寫此方法,內容應為該線程應執(zhí)行的任務。publicfinalvoidstop()停止線程運行,釋放該線程占用的對象鎖旗標。publicvoidinterrupt()打斷此線程publicfinalvoidjoin()在當前線程中加入調用join方法的線程A,直到線程A死亡才能繼續(xù)執(zhí)行當前線程publicfinalvoidjoin(longmillis)在當前線程中加入調用join方法的線程A,直到到達參數(shù)指定毫秒數(shù)或線程A死亡才能繼續(xù)執(zhí)行當前線程Th緣瑞re努ad類(續(xù))——常用AP掌I函數(shù)36in鵝te怎rr皮up裁t(詢)方法境舉例pu務bl都ic基c脊la默ss惡E找xa晃mp惡le煤9_毒9{辦pu經(jīng)bl里ic丑s留ta殼ti牧c唱vo固id咐m(xù)篇ai縱n(任St蝦ri茅ng斧a纏rg新s[搏]){規(guī)A央a=迅ne哲w附A(帽);()市;()互;}}cl痕as心s領A們im青pl筍em房誠en淹ts千R匯un商na病bl錫e{感Th晌re鬼ad拾st不ud嘴en蓬t,速te刃ac職he催r;A(罰){口t運ea御ch銷er鏡=n荒ew嗽T逢hr轉ea逐d(踩th救is遞);st倦ud絨en喜t=芒ne亞w棟Th溜re燃ad挽(t首hi鍬s)次;te鎖ac剛he絞r.樂se跌tN狂am不e(肉"王教患授")棉;st敏ud蕉en拾t.鐵se渠tN室am刑e(盜"張三")順;}37pu鍋bl父ic扔v核oi戰(zhàn)d價ru而n(粗){鈴i哥f(荒Th悲re咽ad謝.c揮ur鹿re堂nt金Th盈re禾ad渾()婚==想st隔ud薦en脂t){檔tr閑y{省Sy析st渾em載.o鄙ut唉.p倒ri戲nt乎ln檔(s六tu教de及nt筐.g暮et斤Na擁me北()醋+"正在皂睡覺表,不絡聽課")父;Th番re帳ad偷.s愁le獅ep畜(1震00聰0*安60而*6局0)渾;}ca羨tc型h(淹In渣te糞rr晉up盯te外dE靜xc積ep挑ti令on勺e流){橡Sy摧st棄em值.o肚ut只.p溝ri拖nt倡ln令(s游tu丹de離nt僻.g營et吃Na傭me割()餓+"被老仇師叫寬醒了")晨;}Sy首st疤em體.o贏ut鏈.p流ri承nt讓ln駱(s害tu符de罪nt肅.g底et秩Na尚me靠()紀+"開始禁聽課")群;}38el篩se豆i級f(鞋Th嶄re辦ad斜.c乒ur朋re俗nt責Th累re室ad達()牲==醋te寫ac沃he詞r){fo屠r(臨in產(chǎn)t全i=瘦1;暮i<洽=3趨;i區(qū)++但){扁("上課!"錫);tr窄y{頂T啄hr壇ea預d.某sl嶼ee慣p(帆50鐵0)閘;}ca駁tc累h(尤In梳t(yī)e咬rr詳up戶te積dE禿xc撲ep揮ti封on憂e孔){仔}}st亮ud贏en圓t.辰in得te勿rr撈up向t(搶);//吵醒st冷ud姥en咸t}}}interrupt()方法使student線程發(fā)生InterruptException,從而結束休眠39GU愿I線程Ex踩am值pl施e9送_1尺140多線撿程的沙同步麻控制有時明線程炮之間亭彼此茂不獨條立、粱需要鄉(xiāng)豐同步(相互齊配合)線程賀間的僅互斥同時色運行牙的幾畝個線旱程需獨要共朱享一骨個(脅些)濁數(shù)據(jù)一個汽線程嗚對共雜享的詳數(shù)據(jù)亮進行擇操作趙時,揪不允保許其務他線繡程打獨斷它論,否巧則會貸破壞藝數(shù)據(jù)旋的完弦整性致。即被澤多個蟻線程柳共享緩的數(shù)老據(jù),動在某境一時侵刻只脹允許逐一個粒線程笨對其依進行復操作“生戒產(chǎn)者/消費衛(wèi)者”睛問宏題(砍工資占管理腫員/雇員崗)生產(chǎn)紐奉者產(chǎn)慌生數(shù)坑據(jù),權消費雞者消果費數(shù)駛據(jù),泰具體普來說撿,假網(wǎng)設有末一個Ja掉va應用軋程序兇,其朗中有裹一個權線程核負責促往數(shù)如據(jù)區(qū)主寫數(shù)很據(jù),乞另一至個線葬程從維同一鍵數(shù)據(jù)吧區(qū)中償讀數(shù)握據(jù),坊兩個宏線程柴可以曬并行法執(zhí)行巷(類矩似于耍流水柜線上嶼的兩舟道工扶序)如果畜數(shù)據(jù)戶區(qū)已體滿,座,生紐奉產(chǎn)者堪要等娃消費歸者取江走一曉些數(shù)斑據(jù)后狀才能碰再放到;而巾當數(shù)霜據(jù)區(qū)泄沒有脖數(shù)據(jù)賤時,倍消費還者要黨等生辯產(chǎn)者鄉(xiāng)豐放入星一些燙數(shù)據(jù)爭后再及取41線程箱同步愧的概吐念,圖包括賣互斥丘和協(xié)迎作互斥糞:許多矮線程浙在同餃一個歌共享幟數(shù)據(jù)醒上操溜作而患互不數(shù)干擾卡,同斧一時該刻只絨能有偏一個青線程濃訪問緞該共圣享數(shù)強據(jù)。央因此睬有些評方法蝴或程國序段環(huán)在同屬一時催刻只玩能被震一個唯線程麻執(zhí)行雨,稱購之為藍監(jiān)視富區(qū)(悅臨界竹區(qū))協(xié)作叮:多個摩線程顫可以弱有條仆件地神同時傾操作絞共享閱數(shù)據(jù)芹。執(zhí)行血監(jiān)視嚴區(qū)代限碼的晴線程通在條私件滿粥足的椒情況定下可他以允胳許其探它線脅程進煌入監(jiān)跡視區(qū)談(臨體界區(qū)覆)多線沖程的汁同步縱控制(續(xù))——線程鑰同步(S洪yn鑒ch顛ro衛(wèi)ni上za靠ti蛛on填)42Pr襖od星uc妙eran選dCo答ns賓um矮erHo揭ld討erProducerInput-Dataq0q0…qnq1ProducerInput-Dataq1ConsumerOutputDataqn+1ProducerInput-Dataqn+143sy末nc俯hr半on粥iz罵ed——環(huán)線程席同步飲關鍵牢字把需淘要修膛改數(shù)仍據(jù)的示方法訪用關藥鍵字sy方nc動hr水on檢iz醉ed來修哥飾,最用于里指定標需要周同步初的代考碼段闖或方疏法,秀也就勿是監(jiān)旱視區(qū)當一好個線默程A使用峽一個sy項nc腸hr摸on草iz面ed修飾吧的方勾法時通,其體他線迅程想皂使用銀這個西方法侵時就毀必須兵等待疾,直紗到線暖程A使用云完該屠方法盒(此除非腎線程A使用wa淚it主動橡讓出CU服P資源遞).當被sy躬nc結hr吵on摘iz江ed限定射的代霧碼段傷執(zhí)行謎完,丈就釋日放鎖石旗標扔(信泳號量么)例子曲:Ex灘am安pl劃e9棉_1陡3.香ja憤va多線返程的斃同步脹控制(續(xù))——部sy戲nc星hr廚on睡iz講ed關鍵咐字44線程問間的豆通信為了烏更有特效地泊協(xié)調駱不同里線程溉的工使作,拖需要表在線醒程間浙建立辨溝通泥渠道弊,通第過線跌程間棵的“族對話裝”來慚解決青線程命間的場同步墊問題類的棕一些扇方法烏為線求程間籌的通蟻訊提遭供了頂有效袋手段一個吧線程疑在使饒用的峰同步億方法福中時爺,可特能根至據(jù)問筋題的尤需要擔,必盈須使約用wa縫it冤()昏(掛起)方法辮使本瘋線程期等待愈,暫鍵時讓鏈出CP窗U的使廚用權喊,并斃允許蠟其它道線程蟻使用蘇這個乳同步敘方法鞠。其磁它線剛程如積果在現(xiàn)使用添這個柴同步坊方法限時如蒸果不蜜需要瓜等待停,那陶么它鎮(zhèn)用完書這個精同步料方法唐的同孝時,必應當肥執(zhí)行no補ti批fy悄()肢,no支ti動fy衣Al商l(飄)(恢墨復)方法爹通知亭所有娛的由順于使霉用這笛個同炕步方江法而協(xié)處于冒等待倉的線稿程結侄束等品待。例子棟:Ex絕am外pl慌e9守_1供4.列ja洲va,Ex穗8_鍬8.訪ja愁va樂,南Ex疾8_淋9.顫ja棚va45線程賠的優(yōu)憂先級每個Ja醬va線程蝦都有跟一個蹤蝶優(yōu)先才級,新其范旺圍都柏在1和10之間券。默毅認情川況下劈燕,每匆個線術程的堤優(yōu)先祖級都興設置極為5在線事程A運行巾過程羽中創(chuàng)褲建的伙新的攻線程距對象B,初快始狀矩態(tài)具駱有和重線程A相同買的優(yōu)許先級如果A是個映后臺早線程系,則B也是付個后售臺線征程可在貿線程下創(chuàng)建絲式之后假的任瓶何時禍候,臘通過se急tP干ri縣or槐it美y(蠻in乓t滑pr爭io近ri衫ty筋)方法路改變廈其原稻來的蠢優(yōu)先稅級線程瘋的優(yōu)砌先級(續(xù))46基于誕線程網(wǎng)優(yōu)先挑級的倦線程泊調度具有懶較高升優(yōu)先扮級的庭線程安比優(yōu)泊先級席較低尼的線嘆程優(yōu)肢先執(zhí)冒行對具蛾有相象同優(yōu)婦先級辜的線夏程,Ja盈va的處欄理是悟隨機撈的底層末操作舊系統(tǒng)擺支持屑的優(yōu)吉先級揮可能惰要少鄉(xiāng)豐于10個,冷這樣廟會造毛成一退些混稱亂。創(chuàng)因此備,只妻能將炎優(yōu)先犧級作橡為一鋼種很照粗略意的工倡具使疾用。匠最后巴的控歲制可瓶以通縮慧過明鼻智地喉使用yi冊el慣d(智)函數(shù)能來完姥成我們挪只能坡基于慨效率撤的考貌慮來蜻使用誕線程倆優(yōu)先塔級,堤而不猾能依歡靠線泊程優(yōu)灰先級牌來?;曜C算斤法的系正確凝性線程失的優(yōu)璃先級(續(xù))47假設留某線藍程正矩在運宋行,梳則只按有出婆現(xiàn)以忙下情尋況之看一,健才會湯使其脫暫停周運行一個披具有河更高筍優(yōu)先今級的誓線程墓變?yōu)閷幘途w便狀態(tài)鞭(Re麻ad竟y);由于盛輸入/輸出監(jiān)(或堅其他遷一些各原因錘)、紗調用sl似ee毯p、wa丑it、yi關el篩d方法稅使其擇發(fā)生挖阻塞飼;對于觀支持躬時間挨分片疾的系分統(tǒng),汗時間葛片的蓄時間泥期滿線程膝的優(yōu)肺先級(續(xù))48創(chuàng)建懇兩個勤具有嬌不同旋優(yōu)先仍級的赤線程扇,都減從1遞增宏到40鬧00弄00,每澆增加50坊00賠0顯示蹄一次pu思bl然ic誕c餃la下ss許E付x8王_1自3{pu黎bl貨ic嚇s答ta住ti筑c鋤vo爆id享m朋ai慕n(豪St苗ri棵ng饑[]聚a疲rg容s)螺{Te清st霞Th毒re豪ad格[]叛r嚷un沿ne競rs庸=找n馬ew峰T柔es貧tT碌hr畢ea折d[摘2]蛾;fo嚇r打(i聚nt崖i禮=響0嘆;濁i宣<誼2;融i荒++址)郵r總un蒼ne塞rs戒[i朱]父=趣ne齊w牌Te臟st封Th舒re音ad各(i襖);ru壇nn勞er虹s[留0]駁.s追et閉Pr借io仇ri尤ty會(2刃);怖/磨/設置究第一戀個線領程優(yōu)品先級勻為2ru陵nn勢er瞧s[電1]雜.s蘭et鞏Pr茂io序ri壞ty托(3壟);愧/盜/設置晝第二鏈個線脖程優(yōu)賄先級盞為3fo迷r僻(i賀nt悶i擇=慈0爐;析i件<宿2;快i膊++另)瞧r宣un懲ne對rs雪[i劍].顆st蹈ar偷t(伍);}}線程蔬的優(yōu)悲先級(續(xù))——例8_搖1349cl憑as熱s其Te睬st襪Th災re興ad墊e達xt刺en會ds其T臣hr錢ea漫d{pr攪iv胳at饞e謙in恒t晚ti蔑ck旺=廳1歡;pr環(huán)iv悅at鍋e捏in糟t豬nu音m;pu疾bl繞ic圖T臟es欲tT深hr竿ea暴d(葉in洞t帥i)圈{竊th賀is方.n橡um糟=i簽;鳴}pu擠bl記ic榆v痛oi遞d師ru鳳n(叮)棵{wh扶il母e風(t漢ic耳k乘<燦40皺00號00滔)糖{ti漂ck繞++區(qū);if袖(扁(t啦ic工k護%余50刻00婦0)濃=左=陳0)彎{叛//每隔50婆00進行插顯示("腎Th秒re資ad謹#穩(wěn)"壤+乓nu葛m腸+經(jīng)",毛t室ic由k跡=全"印+鬼ti況ck絲式);yi翠el從d(童);淡//放棄模執(zhí)行
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 交通運輸行業(yè)智能交通與船舶導航方案
- 科技項目研究可行性研究報告
- 家庭智能家居控制系統(tǒng)的
- 股份制改革流程及關鍵文書編寫指南
- 家庭園藝種植技術手冊
- 項目申請書和可行性研究報告的關系
- 工廠項目可行性報告
- 企業(yè)人力資源管理師(三級)實操練習試題及答案
- 健身俱樂部營銷策略及會員服務方案
- 護師及主管護師復習測試卷附答案
- 漂流項目規(guī)劃設計方案
- 加強溝通協(xié)調:制定溝通協(xié)調工作方案
- 中西醫(yī)結合規(guī)范化癌痛全程管理 癌痛的中西醫(yī)結合規(guī)范化治療(一)課件
- 新產(chǎn)品開發(fā)流程圖
- 儲氣罐日常點檢記錄表
- 安 全 旁 站 監(jiān) 理 記 錄 表
- 村衛(wèi)生室醫(yī)療質量督導檢查匯總表
- 電子商務專升本考試(習題卷12)
- 小學部編五下快樂讀書吧整本書閱讀-《西游記》閱讀指導課教學設計
- 高中英語-what's in a name教學課件設計
- 德能勤績考核評價表
評論
0/150
提交評論