更新時間:2022-10-08 10:42:57 來源:動力節點 瀏覽1323次
Java 中的同步是控制多個線程對任何共享資源的訪問的能力。
在我們希望只允許一個線程訪問共享資源的情況下,Java線程同步是更好的選擇。
如果您將任何方法聲明為同步,則稱為同步方法。
同步方法用于為任何共享資源鎖定對象。
當線程調用同步方法時,它會自動獲取該對象的鎖,并在線程完成其任務時釋放它。
例子:
//java同步方法的例子
類 表{
synchronized void printTable( int n){ //同步方法
for ( int i= 1 ;i<= 5 ;i++){
System.out.println(n*i);
試試{
線程.sleep( 400 );
}捕捉(異常 e){System.out.println(e);}
}
}
}
MyThread1 類擴展 Thread{
藥片;
MyThread1(表 t){
這.t=t;
}
公共無效 運行(){
t.printTable( 5 );
}
}
MyThread2 類擴展 Thread{
藥片;
MyThread2(表 t){
這.t=t;
}
公共無效 運行(){
t.printTable( 100 );
}
}
公共類 TestSynchronization2{
公共靜態無效 主要(字符串參數[]){
表 obj = 新 表();//只有一個對象
MyThread1 t1=新的 MyThread1(obj);
MyThread2 t2=新的 MyThread2(obj);
t1.start();
t2.start();
}
}
輸出:
5
10
15
20
25
100
200
300
400
500
通過上述介紹,相信大家對Java線程同步方法已經有所了解,大家如果想了解更多相關知識,可以關注一下本站的Java在線學習,里面的課程內容從入門到精通,細致全面,很適合沒有基礎的小伙伴學習,希望對大家能夠有所幫助。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習