- In TypeScript 5.2 wurde mit
using ein neues Schlüsselwort hinzugefügt, mit dem sich Objekte beim Verlassen ihres Gültigkeitsbereichs explizit freigeben lassen.
- Die Funktion ähnelt dem
using, das es bereits in C# und anderen Sprachen gibt.
- Wenn eine bestimmte Funktion ein Objekt zurückgibt, wird dieser Funktion über das Symbol
Symbol.dispose zugewiesen.
- Über
using wird diese Funktion aufgerufen.
- Wenn der Gültigkeitsbereich anschließend verlassen wird, wird die Funktion
Symbol.dispose aufgerufen.
- Grundlage ist der TC39-Vorschlag für explizites Ressourcenmanagement, der kürzlich Stage 3 erreicht hat.
- Über
Symbol.asyncDispose können asynchrone Funktionen zugewiesen werden, und mit await using lassen sich Objekte asynchron verwalten.
- Kann in vielen Situationen eingesetzt werden, etwa bei DB-Verbindungen, Datei-Handles und mehr.
1 Kommentare
Diese Funktion ist eigentlich keine TypeScript-Funktion, sondern fühlt sich eher wie eine Art Polyfill an, das auf einem für ECMAScript vorgeschlagenen Feature basiert.
Laut einem Vorschlag von TC39 soll sie künftig auch in JavaScript implementiert werden.
Ich erinnere mich noch, dass
usingin C# ziemlich praktisch war, daher begrüße ich das grundsätzlich,aber am Ende gibt es auch einige Stimmen, die sagen, dass es doch letztlich dasselbe wie
try ... finallyist.