- Home
- Skills
- Agents & Orchestration
- Repair Thread Pool Starvation
Works with the AI tools you already use
Repair Thread Pool Starvation
Repair thread-pool starvation from nested waits, callback affinity, fan-out, or shutdown competition without adding capacity.
$8.99
Repair Thread Pool Starvation
Example session with this skill installed
Our Java report service uses a fixed pool of 8 workers. Each request task running in that pool submits a database mapping child back to the same pool and calls Future.get(). With 8 concurrent reports, all parents wait and all children remain queued forever. Repair locally with latches and fake database results. Keep 8 workers, the bounded queue, rejection policy, timeouts, retries, ordering, and result format; do not access the database or production executor.
- Read your context and instructions
- Compiled the repair thread pool
Starvation cycle found. Eight parent tasks occupy all eight workers and synchronously wait for child tasks queued to the same executor, so no child can start. The repair uses repository-supported completion composition and explicit task ownership, preserves pool size, queue, rejection, timeout, retry, and result semantics, and proves progress with an eight-parent barrier fixture.
Connects securely to your tools. The creator never sees your data.
What you get
About this skill
The problem
Thread pool starvation occurs when tasks occupy every worker while synchronously waiting for child tasks queued to that same exhausted pool. This creates a capacity dependency cycle where the CPU sits idle while the application freezes under load.
What it does
- Identifies blocking and completion edges across request, child, and shutdown task paths.
- Reconstructs the smallest saturation state to isolate capacity dependency cycles.
- Removes same-pool blocking by implementing nonblocking composition or executor separation.
- Preserves existing backpressure, rejection, and timeout semantics without increasing worker counts.
- Builds deterministic saturation tests using exact-capacity barriers instead of sleeps.
Frameworks & tools
Works with Java/JVM (java.util.concurrent), C# (.NET Task Parallel Library), Python (concurrent.futures), and Go. Compatible with any environment using fixed or bounded executors.
Why this beats prompting it yourself
Most LLMs suggest increasing thread counts or timeouts, which only delays the crash. This skill enforces an acyclic task-capacity contract, identifying the structural dependency flaw that causes the freeze rather than just treating the symptoms.
Use cases
- Fixing deadlocks where parent tasks wait for child tasks in the same saturated pool.
- Resolving shutdown sequences that hang behind tasks they are trying to drain.
- Remediating throughput collapse in systems using nested submissions.
- Verifying concurrency fixes with high-fidelity saturation tests.
Known limitations
Cannot move blocking work onto event loops or modify production worker counts. Requires repository access to inspect executor configurations and task submission paths.
How to install
Works the same in every agent - Claude, Cursor, Codex, Copilot and 20+ more.
- 1
Download the ZIP
Free skills download straight away. Paid skills unlock right after purchase.
- 2
Unzip into your skills folder
Every agent reads skills from one folder on your machine. Drop the unzipped folder in there.
- 3
Ask your agent to use it
Restart the agent if it was already running. It picks the skill up automatically - no config needed.
Skills folder by agent
Click the path to copy it. Create the folder if it does not exist yet.
Reviews
No reviews yet
Be one of the first to try it. Every listed skill passes our trust checks below.
Security scanned
Passed our 8-point scan before listing
Fresh listing
Recently published to Agensi
30-day refund
Not a fit? Get your money back
Trust & safety
Security scanned
Verified clean 1 month ago
- Passed all security checks, Safe to install