Skip to content

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

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

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions