trigger.dev
Version:
A Command-Line Interface for Trigger.dev projects
40 lines (39 loc) • 1.48 kB
TypeScript
import { MachinePresetResources, ServerBackgroundWorker, WorkerManifest } from "@trigger.dev/core/v3";
import { TaskRunProcess } from "../executions/taskRunProcess.js";
export type TaskRunProcessPoolOptions = {
env: Record<string, string>;
cwd: string;
enableProcessReuse: boolean;
maxPoolSize?: number;
maxExecutionsPerProcess?: number;
};
export declare class TaskRunProcessPool {
private availableProcessesByVersion;
private busyProcessesByVersion;
private readonly options;
private readonly maxPoolSize;
private readonly maxExecutionsPerProcess;
private readonly executionCountsPerProcess;
private readonly deprecatedVersions;
constructor(options: TaskRunProcessPoolOptions);
deprecateVersion(version: string): void;
getProcess(workerManifest: WorkerManifest, serverWorker: ServerBackgroundWorker, machineResources: MachinePresetResources, env?: Record<string, string>, cwd?: string): Promise<{
taskRunProcess: TaskRunProcess;
isReused: boolean;
}>;
returnProcess(process: TaskRunProcess, version: string): Promise<void>;
private findReusableProcess;
private shouldReuseProcess;
private isProcessHealthy;
private killProcess;
shutdown(): Promise<void>;
getStats(): {
availableCount: number;
busyCount: number;
totalCount: number;
byVersion: Record<string, {
available: number;
busy: number;
}>;
};
}