Thread.IsAlive and Thread.ThreadState==ThreadState.Running Thread.IsAlive and Thread.ThreadState==ThreadState.Running multithreading multithreading

Thread.IsAlive and Thread.ThreadState==ThreadState.Running


msdn Thread.IsAlive Propertytrue if this thread has been started and has not terminated normally or aborted; otherwise, false.

msdn Thread.ThreadState

  • Running
    The thread has been started, it is not blocked, and there is no pending ThreadAbortException.
  • StopRequested
  • SuspendRequested
  • Background
  • Unstarted
  • WaitSleepJoin
  • Suspended
  • AbortRequested

I think now it's clear Running is not the same as IsAlive