private def markedIdle()

in server/src/main/scala/com/twitter/server/handler/ThreadsHandler.scala [88:106]


  private def markedIdle(in: Seq[ThreadInfo]): Seq[ThreadInfo] = {
    // pretty obvious they are idle
    def idleState(state: Thread.State): Boolean =
      state == Thread.State.TIMED_WAITING || state == Thread.State.WAITING

    // Threads that say they are runnable, but are actually doing nothing.
    def idleRunnable(info: ThreadInfo): Boolean =
      info.stack.headOption.exists { elem =>
        IdleClassAndMethod.contains((elem.getClassName, elem.getMethodName))
      }

    in.map { info =>
      if (idleState(info.thread.getState) || idleRunnable(info)) {
        info.copy(isIdle = true)
      } else {
        info
      }
    }
  }