Heim >Web-Frontend >js-Tutorial >Ist „Return Wait' ein Leistungsengpass?

Ist „Return Wait' ein Leistungsengpass?

Linda Hamilton
Linda HamiltonOriginal
2024-11-19 13:21:02693Durchsuche

Is `return await` a Performance Bottleneck?

Auswirkungen von Return-Await auf die Leistung

Obwohl es die ESLint-Regel „No-Return-Await“ gibt, die von der Verwendung von „Return-Await“ abrät, werden einige Entwickler möglicherweise davon Gebrauch machen dieses Muster. Obwohl dies kein wesentliches Leistungsproblem darstellt, wird in der Beschreibung der Regel erwähnt, dass „Return Wait“ „zusätzliche Zeit einführt, bevor das übergeordnete Versprechen aufgelöst oder abgelehnt wird“.

Das „Einfache Beispiel“ der MDN-Dokumentation zeigt jedoch die Verwendung von Return warten, ohne dass dies Leistungsbedenken mit sich bringt. Um diese Diskrepanz zu beleuchten, untersuchen wir die tatsächlichen Auswirkungen von Return Wait.

Ist Return Wait ein Leistungsproblem?

Im Wesentlichen ist Return Wait ein redundanter Vorgang. Die Promise-Auflösung oder -Ablehnung erfolgt bereits innerhalb der asynchronen Funktion, und returnawait wartet einfach erneut darauf, bevor der Wert zurückgegeben wird. Dieser zusätzliche Vorgang kann potenziell zu einer minimalen Ausführungszeit führen, hat aber wahrscheinlich keine nennenswerten Auswirkungen auf die Leistung.

Ausnahmefall: Fehlerbehandlung

Ein Fall, in dem „Return Wait“ einen bedeutenden Unterschied macht, ist in der Ausnahmebehandlung:

try {
    ...
    return await ...;
} ...

Bei Verwendung von „await“ lösen Ablehnungen innerhalb der asynchronen Funktion eine Ausnahme aus und stellen so sicher, dass die Catch- und Final-Handler ausgeführt werden. Eine einfache Rückgabe würde jedoch einfach den Try-Block verlassen und diese Handler überspringen.

Fazit

Während Return Wait im Allgemeinen kein Leistungsproblem darstellt, wird es als schlechter Stil angesehen und kann auf einen Mangel hinweisen des Verständnisses von Versprechen und Asynchronität/Warten. In den meisten Fällen ist dies unnötig und sollte vermieden werden. Im Zusammenhang mit der Fehlerbehandlung wird das Warten auf die Rückkehr jedoch für die ordnungsgemäße Weitergabe von Ausnahmen unerlässlich.

Das obige ist der detaillierte Inhalt vonIst „Return Wait' ein Leistungsengpass?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn