這是我的場景。使用線程編程的方法
我有一個頻率池,我的BaseStation
需要選擇其中之一。 BaseStation
的關鍵部分是進入頻率選擇階段。一旦它選擇了頻率,控制返回到主要的BaseStation
類,並且它恢復其請求生成。與此同時,即一旦它離開它的臨界區,被選擇的頻率將在一段時間內進入使用狀態,這將由隨機時鐘決定。因此,此頻率將不可用於此期間發生的任何其他請求。一旦頻率使用時間結束,它會將其狀態重新設置爲可用狀態。所以BaseStation
的互斥部分僅用於頻率選擇,一旦結束,BaseStation
功能和頻率使用時間並行運行。
我到目前爲止的編碼是:我有三個類BaseStation
,CriticalSection
和UseFrequency
。 BaseStation
在CriticalSection
調用一個函數的頻率選擇,一旦頻率選擇我有一個在其他類使用頻率啓動一個線程的功能,然後不久後返回控制BaseStation
:
UseFrequency freqInUse = new UseFrequency;
freqInUse.start();
return 1;
但是一旦線程停止,類CriticalSection
需要一些變量更新,我很困惑如何將控制返回到中產階級。我需要使用兩個線程嗎?
和問題....? – 2010-03-02 18:19:52
這是個問題嗎? – 2010-03-02 18:20:12
IVE如何編碼它迄今爲: - 一旦頻率被選擇我有在另一個類中用於頻率使用啓動一個線程的功能,然後將控制返回到主程序: - UseFrequency freqInUse =新UseFrequency; freqInUse.start(); return 1; 但是,一旦線程停止,啓動線程的類需要一些變量更新,我很困惑如何將控制權還給中產階級。我需要使用兩個線程嗎? – 2010-03-02 18:21:07