instance-registry.ts 374 B

123456789101112
  1. const disposers = new Set<(directory: string) => Promise<void>>()
  2. export function registerDisposer(disposer: (directory: string) => Promise<void>) {
  3. disposers.add(disposer)
  4. return () => {
  5. disposers.delete(disposer)
  6. }
  7. }
  8. export async function disposeInstance(directory: string) {
  9. await Promise.allSettled([...disposers].map((disposer) => disposer(directory)))
  10. }