Start here. This is the direct spoken answer to practice first.
Why this question matters
ThreadPool starvation is often blamed whenever an API is slow. The diagnosis needs both a queueing pattern and evidence of what keeps workers unavailable.
ThreadPool starvation usually appears as rising queued work and thread count while request latency climbs without CPU being fully saturated. I confirm that pattern over time, then inspect repeated stacks or wait events for synchronous I/O, long locks, or another blocking path. One blocked thread is not proof; many workers waiting on the same cause is. The combined evidence distinguishes starvation from a simply slow dependency.