Als «multithreading» getaggte Fragen

Multithreading ist die Fähigkeit eines Computers oder eines Programms, gleichzeitig oder asynchron zu arbeiten, indem mehrere gleichzeitige Ausführungsströme verwendet werden (im Allgemeinen als Threads bezeichnet).

2
Sollten ineinandergreifende Implementierungen, die auf CompareExchange basieren, SpinWait verwenden?
Nachfolgend finden Sie eine Implementierung einer ineinandergreifenden Methode, die auf basiert Interlocked.CompareExchange. Ist es ratsam, dass dieser Code SpinWaitvor dem Wiederholen einen Spin verwendet? public static bool AddIfLessThan(ref int location, int value, int comparison) { int currentValue; do { currentValue = location; // Read the current value if (currentValue >= …

2
Wie unterscheidet sich die Verwendung von await von der Verwendung von ContinueWith bei der Verarbeitung von asynchronen Aufgaben?
Folgendes meine ich: public Task<SomeObject> GetSomeObjectByTokenAsync(int id) { string token = repository.GetTokenById(id); if (string.IsNullOrEmpty(token)) { return Task.FromResult(new SomeObject() { IsAuthorized = false }); } else { return repository.GetSomeObjectByTokenAsync(token).ContinueWith(t => { t.Result.IsAuthorized = true; return t.Result; }); } } Die obige Methode kann abgewartet werden, und ich denke, sie ähnelt stark …
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.