dotnet performance_error ai_generated true

ThreadPool starvation: work items queued exceeding available threads

ID: dotnet/thread-pool-starvation

Also available as: JSON · Markdown
78%Fix Rate
82%Confidence
3Evidence
2023-01-01First Seen

Version Compatibility

VersionStatusIntroducedDeprecatedNotes
8 active

Root Cause

Thread pool exhausted from blocking calls in async context.

generic

Workarounds

  1. 92% success Remove blocking calls (.Result, .Wait(), Thread.Sleep) from async code
  2. 90% success Use async I/O throughout: await instead of synchronous calls

Dead Ends

Common approaches that don't work:

  1. Set minimum threads to very high number 72% fail

    Excessive memory usage

  2. Use Thread.Sleep in async methods 88% fail

    Blocks thread pool threads