MCPcopy
hub / github.com/colbymchenry/codegraph / recycle

Method recycle

src/extraction/parse-pool.ts:251–257  ·  view source on GitHub ↗

Tear down a worker that has hit its recycle threshold and replace it. Not a * crash, so it doesn't count against the budget.

(w: ParsePoolWorker)

Source from the content-addressed store, hash-verified

249 /** Tear down a worker that has hit its recycle threshold and replace it. Not a
250 * crash, so it doesn't count against the budget. */
251 private recycle(w: ParsePoolWorker): void {
252 this.log(`Recycling worker after ${this.parseCounts.get(w)} parses (heap: ${Math.round(process.memoryUsage().rss / 1024 / 1024)}MB RSS)`);
253 this.removeWorker(w);
254 // Fire-and-forget: worker.terminate() can hang if WASM is wedged.
255 try { void w.terminate(); } catch { /* already gone */ }
256 if (this.healthy && !this.destroyed) this.spawnOne();
257 }
258
259 private removeWorker(w: ParsePoolWorker): void {
260 this.workers.delete(w);

Callers 2

onMessageMethod · 0.95
recycleAllMethod · 0.95

Calls 4

removeWorkerMethod · 0.95
spawnOneMethod · 0.95
getMethod · 0.65
terminateMethod · 0.65

Tested by

no test coverage detected