繼承thread(這種方式必須重寫run()方法)如下:
public class mythread extends thread
public void run()
super.run();}}
實現runnable介面;如下
public class mythreads implements runnable
@override
public void run() }}
建立狀態:準備好乙個多執行緒物件
就緒狀態:呼叫了start()方法,等待cpu進行排程
執行狀態:執行run方法
阻塞狀態:暫時停止執行,可將資源交給其他執行緒使用
終止狀態:執行緒銷毀
getname()取得執行緒的名稱
currentthread() 取得當前執行緒物件
isalive()判斷當前執行緒是否啟動
join() 強行執行當前執行緒
sleep()讓當前執行緒休眠
yield()執行緒的禮讓
優先順序會提高當前執行緒的首次執行速度,但是不一定能搶到,是乙個可能性的狀態
class test05 implements runnable
public synchronized void call() catch (interruptedexception e)
system.out.println("買出車票"+ticket--);}}
}
}
public class syntest
}以上表示5張車票3個視窗買票;如果不給車票加同步,就會導致賣出第六張票的情況;這裡也就是說車票資源必須共享
java多執行緒
在網上看到很有意思的問題,摘下來好好看下 在面試的時候被問了乙個多執行緒的問題 回來仔細思考了一下,多執行緒是否真的能提高了效率?我對多執行緒的理解就是 比如挖乙個隧道,有2種開工方法 1 只在山的一頭挖,直至挖到山的另一頭,從而打通隧道,這可以看成是單執行緒 2 在山的兩頭挖,同時開工,最後在山的...
Java 多執行緒
1。thread類和runnable介面 2。主線程 用thread的static thread currentthread 方法獲得 3。通過實現runnable介面建立執行緒 實現runnable介面的run方法。新執行緒在run 方法返回時結束。注意用這種方法建立程序時,在實現runnable...
JAVA 多執行緒
為hashmap的不正確使用所導致。hashmap在多執行緒環境下使用不安全。使用靜態hashmap作為聯絡人資料快取,key為手機號碼.private static maplxrdata new hashmap 多執行緒環境下不同步hashmap可能導致如下問題 1 多執行緒put操作後可能導致g...