2011-10-31 220 views
1

之間的問題: 我有2種方法:延遲請求/響應

proccessRequest(); 
proccessResponse(); 

,如果我跑他們這樣的話,因爲請求等待處理耗時太久,響應部分給出了一個錯誤,我得到一個錯誤。但如果我添加Thread.sleep(300);他們之間,那麼它運行良好。

proccessRequest(); 
Thread.sleep(300); 
proccessResponse(); 

這會是一個很好的解決方案嗎?用Thread.sleep停止應用程序不是一個好的解決方案。 我應該使用某種計時器嗎?

+2

這些方法有什麼作用?它們是異步的嗎? – SLaks

回答

0

查找locksconditions。您的回覆需要等待完成請求。如果他們是線程,則您的響應需要加入請求。

0

看起來像processRequest()實際上並沒有等待響應準備就緒。當兩者之間沒有任何延遲時,響應還沒有出現(因爲它需要比生成方法調用花費更多時間)。和processResponse相當合理地處理這個超時。