遇到乙個筆試題:
請寫出執行緒同步的方法!
網上搜尋了半天沒乙個看懂得
我對執行緒的認識少之又少。誰能給乙個簡單點得執行緒同步** 最好有些注釋
謝謝package synh;
/*class threaddemo implements runnablecatch(exception e){}
system.out.println(thread.currentthread().getname() + " is salling ticket --- " + tickets--);}}
}}}*/class threaddemo implements runnable}/*
*同步方法和同步塊道理一樣,這裡就不再說了
*當乙個執行緒執行同步方法的時候其他的方法也不能再執行同步方法中的語句
*/public synchronized void sale()catch(exception e){}//模擬不同步的實現
system.out.println(thread.currentthread().getname() + " is salling ticket --- " + tickets--);}}
}class threadtest
}看完了執行緒間的同步,再看看同步方法和同步**塊之間的同步
package synch;
class threaddemo implements runnable
}elsecatch(exception e){}
system.out.println(thread.currentthread().getname() + " is salling ticket --- " + tickets--);}}
}}}/*
*同步方法和同步塊道理一樣,這裡就不再說了
*當乙個執行緒執行同步方法的時候其他的方法也不能再執行同步方法中的語句
*/public synchronized void sale()catch(exception e){}//模擬不同步的實現
system.out.println("method: " + thread.currentthread().getname() + " is salling ticket --- " + tickets--);}}
}class threadtest1catch(exception e){} td.str = "method";
new thread(td).start();
//new thread(td).start();
//new thread(td).start();}}
這裡最關鍵的一點就是要想讓同步方法和同步**塊同步,兩者就要使用相同的監視器物件
本程式中用的同乙個監視器物件是this
c 用乙個執行緒同步的簡單例子
1 using system 2using system.collections.generic 3using system.componentmodel 4using system.data 5using system.drawing 6using system.linq 7using syste...
Java多執行緒 手寫乙個死鎖的例子
下面是乙個多執行緒死鎖的例子 public class deadlockdemo private void deadlock catch interruptedexception e synchronized lock2 system.out.println thread1 end thread t...
乙個簡單的C 多執行緒間同步的例子
在開發中經常會遇到執行緒的例子,如果某個後台操作比較費時間,我們就可以啟動乙個執行緒去執行那個費時的操作,同時程式繼續執行。在某些情況下可能會出現多個執行緒的同步協同的問題,下面的例子就展示了在兩個執行緒之間如何協同工作。這個程式的思路是共同做一件事情 從乙個arraylist中刪除元素 如果執行完...