當前位置:編程學習大全網 - 編程軟體 - Java線程生產者消費者問題

Java線程生產者消費者問題

妳的消費者線程先啟動的,因為index==0,所以進入了等待模式,而生產者線程沒有在push了之後進行喚醒,導致了問題。

測試在push方法中的index++後面添加notifyAll()方法可以解決該問題:

index++;

this.notifyAll();

Thread-1生產了1號饅頭

Thread-0消費了第1個饅頭

Thread-1生產了2號饅頭

Thread-0消費了第2個饅頭

Thread-1生產了3號饅頭

Thread-0消費了第3個饅頭

Thread-1生產了4號饅頭

Thread-0消費了第4個饅頭

Thread-1生產了5號饅頭

Thread-0消費了第5個饅頭

Thread-1生產了6號饅頭

Thread-0消費了第6個饅頭

Thread-1生產了7號饅頭

Thread-0消費了第7個饅頭

Thread-1生產了8號饅頭

Thread-0消費了第8個饅頭

Thread-1生產了9號饅頭

Thread-0消費了第9個饅頭

  • 上一篇:UV打印機的關鍵技術有哪些?
  • 下一篇:新手如何快速賺錢
  • copyright 2024編程學習大全網