一、前言

  對于并發(fā)編程而言,除了Thread以外,對Object對象的wati和notify對象也應(yīng)該深入了解其用法,雖然知識點(diǎn)不多。

二、線程安全基本知識

  首先應(yīng)該記住以下基本點(diǎn),先背下來也無妨:

  • 同一時間一個鎖只能被一個線程持有

  • 調(diào)用對象的wait()和notify()前必須持有它

三、wait()和notify()理解

3.1 wait()和notify()方法簡介

  wait()和notify()都是Object的方法,可以認(rèn)為任意一個Object都是一種資源(或者資源的一個代表),當(dāng)多個線程對一個資源進(jìn)行操作時,如果線程發(fā)現(xiàn)這個資源還沒有準(zhǔn)備好,它就可以在這個資源上進(jìn)行等待,即調(diào)用這個資源的wait()方法,如果有另外的線程經(jīng)過某些處理覺得這個資源可用了,會調(diào)用這個這個資源的notify()方法,告訴等待它的線程,這個資源可以用了。

  當(dāng)然不使用wait()和notify()方法也是可以的,可以用while()死循環(huán)來判斷,如下面的偽代碼: 

seo優(yōu)化培訓(xùn),網(wǎng)絡(luò)推廣培訓(xùn),網(wǎng)絡(luò)營銷培訓(xùn),SEM培訓(xùn),網(wǎng)絡(luò)優(yōu)化,在線營銷培訓(xùn)

class Resource{    static boolean canUse=false;
}while(!Resource.canUse){    //如果不可用,死循環(huán)在這里等待}//當(dāng)資源可以使用后,就會跳出循環(huán),往下執(zhí)行

seo優(yōu)化培訓(xùn),網(wǎng)絡(luò)推廣培訓(xùn),網(wǎng)絡(luò)
        
        	<div   id=

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式