()
| 155 | getServerHandlersRuntime(token).runPromise(ServerHandlersService.asEffect()); |
| 156 | |
| 157 | export const disposeServerHandlers = async (): Promise<void> => { |
| 158 | const runtime = serverHandlersRuntime; |
| 159 | if (!runtime) return; |
| 160 | serverHandlersRuntime = null; |
| 161 | await Effect.runPromise( |
| 162 | Effect.gen(function* () { |
| 163 | yield* ignoreDisposeFailure("runtime.dispose", () => runtime.dispose()); |
| 164 | // Belt-and-suspenders: runtime disposal normally reaches closeServerHandlers, |
| 165 | // but a failed runtime finalizer must not leave the shared DB owner alive. |
| 166 | yield* ignoreDisposeFailure("disposeExecutor", () => disposeExecutor()); |
| 167 | }), |
| 168 | ); |
| 169 | }; |
no test coverage detected