本篇文章為大家展示了Java線程同步如何在不同線程中調(diào)用,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
臨猗網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)公司!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、自適應網(wǎng)站建設(shè)等網(wǎng)站項目制作,到程序開發(fā),運營維護。成都創(chuàng)新互聯(lián)公司于2013年創(chuàng)立到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進行。專注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)公司。
Java線程同步需要我們大家不斷的學習,但是在學習的時候有些重要的代碼還是需要注意,下面我們就來詳細的看看Synchronized,顧名思義,代表Java線程同步。那么,在java編程中如何使用它呢?
我們首先來看這樣一個情況:對于同一個變量synDemo,我們分別在2個不同的線程中調(diào)用synDemo.synMethord1()與synDemo.synMethord2()。
package com.cnblogs.gpcuster;/** * * @author Aaron.
Guo * */public class Tester { public static void main(String[]
args) { final SynDemo synDemo = new SynDemo(); Thread
thread1 = new Thread() { @Override public void run() {
// TODO Auto-generated method stubsuper.run(); synDemo.synMethord1(); } }; Thread thread2
= new Thread() { @Override public void run() { // TODO
Auto-generated method stubsuper.run(); synDemo.synMethord2(); } }; thread1.start();
thread2.start(); while (true) { try { Thread.sleep(1000);
System.out.println("main"); } catch (InterruptedException e)
{ // TODO Auto-generated catch blocke.printStackTrace();
}
}
}
}
我們的SynDemo是這樣定義的:
package com.cnblogs.gpcuster;/** * * @author
Aaron.Guo * */public class SynDemo{ public void synMethord1() {
while(true) { try { Thread.sleep(1000); System.out.
println("synMethord1"); } catch (InterruptedException e)
{ // TODO Auto-generated catch blocke.printStackTrace();
}
}
}
public void synMethord2() { while(true) { try { Thread.
sleep(1000); System.out.println("synMethord2"); } catch
(InterruptedException e) { // TODO Auto-generated catch blocke.printStackTrace();
}
}
}
}
上述內(nèi)容就是Java線程同步如何在不同線程中調(diào)用,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。