Async await?

2 Antworten

Ich nehme an, du beziehst dich auf JavaScript?

Wenn man von Web Worker absieht, ist JavaScript grundsätzlich single-threaded. Async/Await ist nur syntaktischer Zucker für Promises, d.h. wenn du diese Keywords benutzt, wird der Code innerhalb Promises erzeugt und im Event Loop hinten angestellt, bevor er verarbeitet wird. Das passiert aber immer alles im selben Thread.

Woher ich das weiß:Berufserfahrung – Software Engineer seit 2015, u.a. Telefónica und gutefrage

wenn ich das richtig verstanden habe .

normal werden ja befehle einfach abgearbeitet syncron , das heist ein nach dem anderen , und es wird solange gewartet bis der befehl abgearbeitet ist .

wenn wir aber einen befehl haben der asyncron ist , dann wird da quasi irgendwas anlaufen und sofort als fertig makiert .

mit dem await stopt man nun solange wie bei einem normalen befehl . das heisst, es wird auch dort gewartet bis der befehl eine rückmeldung bekommt .

await sql abfrage 1
await sql abfrage 2
.
.
läuft erst weiter wenn await erfüllt ist 

und ja es brauch ein promise für das ganze .

vorteil , du musst nicht verketten also nicht folgendes machen

sql abfrage 1 -> ( antwort -> sql abfrage 2 )
. 
.
läuft sofort weiter