Spaces:
Build error
Build error
File size: 1,151 Bytes
23a3b80 6e78e38 23a3b80 6e78e38 23a3b80 df127d0 c064fcf df127d0 23a3b80 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | import { AbstractFinalizerService } from 'civkit/finalizer';
import { container, singleton } from 'tsyringe';
import { isMainThread } from 'worker_threads';
import { GlobalLogger } from './logger';
const realProcessExit = process.exit;
process.exit = ((code?: number) => {
if (isMainThread) {
return;
}
return realProcessExit(code);
}) as typeof process.exit;
@singleton()
export class FinalizerService extends AbstractFinalizerService {
container = container;
logger = this.globalLogger.child({ service: this.constructor.name });
override quitProcess(code?: string | number | null | undefined): never {
return realProcessExit(code);
}
constructor(protected globalLogger: GlobalLogger) {
super(...arguments);
}
override onUnhandledRejection(err: unknown, _triggeringPromise: Promise<unknown>): void {
this.logger.warn(`Unhandled promise rejection in pid ${process.pid}`, { err });
}
}
const instance = container.resolve(FinalizerService);
export const { Finalizer } = instance.decorators();
export default instance;
if (isMainThread) {
instance.serviceReady();
}
|