Skip to content

Improve the rate of thread injection for blocking due to sync-over-async #52558

@kouvel

Description

@kouvel
  • By default add threads more quickly when thread pool worker threads are blocking due to sync-over-async
  • This would cover Task.Wait() and similar Task-based synchronous calls from thread pool threads. For now, it would not cover other kinds of blocking.
  • Threads would be added quickly initially (without a delay for the first N additional threads) and progressive delays would be induced before adding each additional thread as the thread count increases (increased delay for each subsequent batch of M additional threads)
  • Memory usage and limits would be used to determine when to stop adding threads quickly
  • Heuristics would be configurable to enable controlling rates and limits

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions