Dies umfasst das asynchrone Programmiermodell, das von verschiedenen Programmiersprachen unter Verwendung der Schlüsselwörter async und wait unterstützt wird.
let x = 0; async function test() { x += await 5; console.log('x :', x); } test(); x += 1; console.log('x :', x); Führen Sie das Code-Snippet ausErgebnisse ausblendenErweitern Sie das Snippet Die Werte von xprotokolliert sind 1und 5. Meine Frage ist: Warum ist der Wert von x 5im zweiten …
Beim Wechsel zu den neuen .NET Core 3 IAsynsDisposablebin ich auf das folgende Problem gestoßen. Der Kern des Problems: Wenn DisposeAsynceine Ausnahme ausgelöst wird, werden durch diese Ausnahme alle innerhalb von await using-block ausgelösten Ausnahmen ausgeblendet. class Program { static async Task Main() { try { await using (var d …
Ich habe gerade eine merkwürdige Beobachtung bezüglich der Task.WhenAllMethode gemacht, als ich unter .NET Core 3.0 lief. Ich habe eine einfache Task.DelayAufgabe als einzelnes Argument übergeben Task.WhenAllund erwartet, dass sich die umschlossene Aufgabe identisch mit der ursprünglichen Aufgabe verhält. Dies ist jedoch nicht der Fall. Die Fortsetzungen der ursprünglichen Aufgabe …
Laut MDN gibt for await...of es zwei Anwendungsfälle: Die for await...ofAnweisung erstellt eine Schleife, die sowohl über asynchrone iterierbare Objekte als auch über synchronisierte iterierbare Objekte iteriert. Ersteres war mir vorher bekannt: asynchrone iterables using Symbol.asyncIterator. Aber ich interessiere mich jetzt für Letzteres: synchrone Iterables. Der folgende Code iteriert über …
Ich kann keine asynchronen Funktionen verarbeiten, wenn ich einen asynchronen Router für schreibe hyper. Dieser Code: use std::collections::HashMap; use std::future::Future; type BoxedResult<T> = Result<T, Box<dyn std::error::Error + Send + Sync>>; type CalcFn = Box<dyn Fn(i32, i32) -> dyn Future<Output = BoxedResult<i32>>>; async fn add(a: i32, b: i32) -> BoxedResult<i32> { …
Was ist die richtige Signatur für eine Controller-Aktion, die ein IAsyncEnumerable<T>und ein zurückgibt, NotFoundResultaber dennoch asynchron verarbeitet wird? Ich habe diese Signatur verwendet und sie wird nicht kompiliert, weil sie IAsyncEnumerable<T>nicht erwartet werden kann: [HttpGet] public async Task<IActionResult> GetAll(Guid id) { try { return Ok(await repository.GetAll(id)); // GetAll() returns an …
async fnGibt einen anonymen Typ zurück, der implementiert Futurewird. Wenn wir ihn also als Rückruf verwenden möchten, müssen wir den Rückgabewert in ein Merkmalobjekt konvertieren. Ich habe versucht, eine Funktion zu schreiben, um dies zu tun, aber ich hatte einige lebenslange Probleme. async fngibt die Lebensdauer aller Parameter zurück, daher …
Hier haben wir eine Gridmit einem Button. Wenn der Benutzer auf die Schaltfläche klickt, wird eine Methode in einer Utility-Klasse ausgeführt, die die Anwendung zwingt, einen Klick auf Grid zu erhalten. Der Code-Fluss muss hier anhalten und darf erst fortgesetzt werden, wenn der Benutzer auf das geklickt hat Grid. Ich …
Ich versuche, eine Klasse zu entwerfen, die die Möglichkeit bietet, Bedenken hinsichtlich der asynchronen Verarbeitung hinzuzufügen. Bei der synchronen Programmierung könnte dies so aussehen public class ProcessingArgs : EventArgs { public int Result { get; set; } } public class Processor { public event EventHandler<ProcessingArgs> Processing { get; } public …
Ich dachte, ich hätte das asynchrone Wartemuster und die Task.RunOperation verstanden. Ich frage mich jedoch, warum im folgenden Codebeispiel die awaitSynchronisierung nach der Rückkehr von der abgeschlossenen Aufgabe nicht wieder mit dem UI-Thread synchronisiert wird. public async Task InitializeAsync() { Console.WriteLine($"Thread: {Thread.CurrentThread.ManagedThreadId}"); // "Thread: 1" double value = await Task.Run(() …
Ich muss mehrere API-Aufrufe durchführen, die über eine API abgerufen, Daten über die API in die Datenbank geschrieben und die Ausgabe über eine andere API an das Front-End gesendet werden. Ich habe eine asynchrone Funktion mit Warten wie unten geschrieben - Die ersten beiden sollten nacheinander ausgeführt werden, die dritte …
Wenn ich asynchronen Code mit async / await schreibe, normalerweise ConfigureAwait(false)um den Kontext nicht zu erfassen, springt mein Code nacheinander von einem Thread-Pool-Thread zum nächsten await. Dies wirft Bedenken hinsichtlich der Gewindesicherheit auf. Ist dieser Code sicher? static async Task Main() { int count = 0; for (int i = …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.