netty解決空輪詢bug

selector在沒有結果的狀況下,依然被喚醒,netty

  • 致使一直空輪詢,cpu100%

netty 解決:select

  • 先定義當前時間currentTimeNanos。
  • 接着計算出一個執行最少須要的時間timeoutMillis。
  • 每次對selectCnt作++操做。
  • 進行判斷,若是到達執行到最少時間,則seletCnt重置爲1。
    • 一旦到達SELECTOR_AUTO_REBUILD_THRESHOLD這個閥值,就須要重建selector來解決這個問題。
    • 這個閥值默認是512。
相關文章
相關標籤/搜索