freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

java網(wǎng)絡(luò)編程第2章-資料下載頁

2025-05-10 17:34本頁面
  

【正文】 件)線程投入時,不是一次性申請所需資源,而是運(yùn)行中按需要臨時動態(tài)地申請。 4. 循環(huán)等待條件: 系統(tǒng)中幾個線程形成循環(huán)地等待對方所占用資源的關(guān)系。 為了找到死鎖的解決方法,我們先看下面的一個死鎖圖, PP2表示兩個線程, R R2表示資源, P1已經(jīng)占用資源 R1而且在等待R2, P2已經(jīng)占用資源 R2而且在等待 R1,這時就會產(chǎn)生兩個線程互相等待的狀態(tài)。 從上圖可以看出,只要去掉其中的任何一條線,就不會形成死鎖。 實(shí)際上,預(yù)防死鎖有一個基本思想:要求線程申請資源時遵循某種協(xié)議,從而打破產(chǎn)生死鎖的四個條件中的一個或幾個,從而保證系統(tǒng)不會進(jìn)入死鎖狀態(tài)。 wait和 notify機(jī)制 在實(shí)際應(yīng)用中,多線程之間常常需要互相協(xié)調(diào)工作。例如,瀏覽器的一個顯示圖片的線程 displayThread想要執(zhí)行顯示圖片的任務(wù),必須等待下載線程 downloadThread將該圖片下載完畢。如果圖片還沒有下載完,線程 displayThread可以暫停,當(dāng)線程 downloadThread完成了任務(wù)后,再通知線程 displayThread并顯示“圖片準(zhǔn)備完畢,可以顯示了”,這時, displayThread繼續(xù)執(zhí)行。 以上邏輯簡單的說就是:如果條件不滿足,則等待。當(dāng)條件滿足時,等待該條件的線程將被喚醒。在 JAVA中,這個機(jī)制的實(shí)現(xiàn)依賴于 wait()/notify()方法。等待機(jī)制與喚醒機(jī)制是密切關(guān)聯(lián)的。 synchronized(obj) { while(!condition) { ()。 } ()。 } 當(dāng)線程 A獲得了 obj鎖后,發(fā)現(xiàn)條件 condition不滿足,無法繼續(xù)下一步處理,于是線程 A就 wait()。在另一線程 B中,如果 B更改了某些條件,使得線程 A的 condition條件滿足了,就可以喚醒線程 A,如下所示: synchronized(obj) { condition = true。 ()。 } 實(shí)踐項(xiàng)目 —— 五子棋復(fù)盤游戲 實(shí)踐項(xiàng)目的具體要求如下 : 以在線下棋步驟(復(fù)盤)的兩個線程為例,在運(yùn)行過程中,其中有一個線程用于下黑棋、另外一個線程用于下白棋,還有一個用于存放下棋步驟的 Vector,他的顯示效果為:運(yùn)行時打開一個窗體,上面加載了一個棋盤,之后黑棋白棋先后交替下棋,間隔為一秒鐘,直到復(fù)盤結(jié)束為止。 本章總結(jié) C語言概述與發(fā)展 C語言的特點(diǎn) 程序設(shè)計(jì)語言概述 C語言程序結(jié)構(gòu) C語言程序書寫時的注意事項(xiàng) C語言程序格式上的其他特點(diǎn) C語言開發(fā)環(huán)境 Visual C++
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1