乙個經典的面試題目:
編寫乙個程式,開啟3個執行緒。這3個執行緒的id分別為a、b、c.每個執行緒將自己的id在螢幕上列印10遍。要求輸出的結果必須按順序顯示,如:abcabcabcabcab.......
public class copyoftestconditioneffect
}},"a").start();
new thread(new runnable()
}},"b").start();
new thread(new runnable()
}},"c").start();} }
class loopdemo
system.out.println("第"+times+"次列印:"+thread.currentthread().getname());
state=2;
c2.signal();
} catch (exception e) finally
} public void loopb(int times)
system.out.println("第"+times+"次列印:"+thread.currentthread().getname());
state=3;
c3.signal();
} catch (exception e) finally
} public void loopc(int times)
system.out.println("第"+times+"次列印:"+thread.currentthread().getname());
state=1;
c1.signal();
} catch (exception e) finally
}
}
執行緒交替列印
建立三個執行緒,a執行緒列印10次a,b執行緒列印10次b,c執行緒列印10次c,要求執行緒同時執行,交替列印10次abc。這個問題用object的wait notify 就可以很方便的解決。主要的思想就是,為了控制執行的順序,必須要先持有prev鎖,也就前乙個執行緒要釋放自身物件鎖,再去申請自身物...
併發程式設計 執行緒交替列印
目錄 一.題目 二.我們提供乙個類 class foobar public void bar 兩個不同的執行緒將會共用乙個 foobar 例項。其中乙個執行緒將會呼叫 foo 方法,另乙個執行緒將會呼叫 bar 方法。請設計修改程式,以確保 foobar 被輸出 n 次。示例 1 輸入 n 1 輸出...
多執行緒 LeetCode 交替列印FooBar
我們提供乙個類 class foobar public void bar 兩個不同的執行緒將會共用乙個 foobar 例項。其中乙個執行緒將會呼叫 foo 方法,另乙個執行緒將會呼叫 bar 方法。請設計修改程式,以確保 foobar 被輸出 n 次。示例 1 輸入 n 1 輸出 foobar 解釋...