我有一個特定的需求,我想在兩個線程之間進行通信。線程同步和信號
我想使用Java 1.6
讓我們假設來實現這個多線程的使用情況下,我們必須確保使用無人駕駛飛機的區域。該區域可以在X軸上測量100km,在Y軸上測量100km。在這個平面上的每個鄉紳公里都可以使用{x,y}座標來定位。例如{0,1} {0,2} {0,3} {0,4} {0,5}無人駕駛飛機可以有其預定義的飛行路徑(它可以是隨機的,在這個平原中的任何地方),例如{0,1} {0,2} {0,4} {0,5} {0,6}。他們必須繼續從{0,1}飛到{0,6}。一旦無人機到達目的地,它應該開始其旅程,例如從{0,6}到{0,1},並保持飛回來和第四,除非停止。
但是一個轉折點 - 讓我們說上面的飛行路徑drone1從{0,1}開始,到達{0,2}。無人駕駛飛機1將保持懸停在{0,2},直到另一架無人機釋放它。例如drone2具有完全不同的飛行路徑,但是有一個或路徑作爲drone1兩個共同立場,將指導drone1「你可以從這個位置釋放自己,保持飛往你的路,因爲我在這裏獲得這個位置」 。
如果你理解了使用正確的情況下,這裏的問題是,線程1它已經收購了在{0,2}鎖,必須等待,直到線程2指示將其釋放。
我們如何做到這一點,如何發送消息到另一個線程,並等到位置爲空?
與我們分享您的解決問題的嘗試。 – LorDex
我不知道該怎麼做。正如我在問題中提到的那樣,thread1已經獲得位置{0,2}上的鎖定。兩個線程之間唯一的碎片就是位置,我找不到同步的方式來在thread1和其他嘗試獲取鎖的線程之間進行通信。 – Gunwant
在什麼語言,你應該寫的嗎?對於同一件事,不同的語言可能會有不同的詞。 – Dialecticus