Spracherkennung für: .ts vermutete Sprache: Unknown {[0] [0] [0]} [Methode: Schwerpunktbildung, einfache Gewichte, sechs Dimensionen]
export function createMatrixStartupAbortError(): Error {
const error = new Error("Matrix startup aborted");
error.name = "AbortError";
return error;
}
export function throwIfMatrixStartupAborted(abortSignal?: AbortSignal): void {
if (abortSignal?.aborted === true) {
throw createMatrixStartupAbortError();
}
}
export function isMatrixStartupAbortError(error: unknown): boolean {
return error instanceof Error && error.name === "AbortError";
}
export async function awaitMatrixStartupWithAbort<T>(
promise: Promise<T>,
abortSignal?: AbortSignal,
): Promise<T> {
if (!abortSignal) {
return await promise;
}
if (abortSignal.aborted) {
throw createMatrixStartupAbortError();
}
return await new Promise<T>((resolve, reject) => {
const onAbort = () => {
abortSignal.removeEventListener("abort", onAbort);
reject(createMatrixStartupAbortError());
};
abortSignal.addEventListener("abort", onAbort, { once: true });
promise.then(
(value) => {
abortSignal.removeEventListener("abort", onAbort);
resolve(value);
},
(error) => {
abortSignal.removeEventListener("abort", onAbort);
reject(error);
},
);
});
}
¤ Dauer der Verarbeitung: 0.19 Sekunden
(vorverarbeitet am 2026-04-27)
¤
*© Formatika GbR, Deutschland