Pytania oznaczone «async-await»

158
Parallel.ForEach vs Task.Run i Task.WhenAll

Jakie są różnice między używaniem Parallel.ForEach lub Task.Run () do asynchronicznego uruchamiania zestawu zadań? Wersja 1: List<string> strings = new List<string> { "s1", "s2", "s3" }; Parallel.ForEach(strings, s => { DoSomething(s); }); Wersja 2: List<string> strings =...

141
Czy istnieje asynchroniczny odpowiednik Process.Start?

Jak sugeruje tytuł, czy istnieje odpowiednik Process.Start(pozwalający na uruchomienie innej aplikacji lub pliku wsadowego), na który mogę czekać? Gram z małą aplikacją konsolową i wydawało mi się, że to idealne miejsce do używania async i czekania, ale nie mogę znaleźć żadnej dokumentacji dla...

139
Jak zdobyć oczekiwany Thread.Sleep?

Piszę aplikację sieciową opartą na paradygmacie await / sleep. Czasami zdarzają się błędy połączenia i z mojego doświadczenia wynika, że ​​warto poczekać jakiś czas, a następnie ponowić operację. Problem polega na tym, że jeśli używam Thread.Sleep lub innej podobnej operacji blokowania w await /...

138
Jak czekać na zakończenie metody asynchronicznej?

Piszę aplikację WinForms, która przesyła dane do urządzenia USB klasy HID. Moja aplikacja korzysta z doskonałej biblioteki Generic HID v6.0, którą można znaleźć tutaj . W skrócie, kiedy muszę zapisać dane do urządzenia, jest to kod, który jest wywoływany: private async void...

137
Korzystanie z async-await na .net 4

Obecnie zaczynam tworzyć aplikację, która przyniosłaby duże korzyści dzięki funkcji async-await w języku C # 5. Ale nie jestem pewien, której wersji VS i środowiska uruchomieniowego asynchronicznego użyć. Patrząc na wykresy popularności systemów operacyjnych, będę musiał obsługiwać system Windows...

131
async await return Task

Czy ktoś może wyjaśnić, co to oznacza dla metody synchronicznej? Jeśli spróbuję zmienić metodę na asyncto VS narzekają na to. To działa: public Task MethodName() { return Task.FromResult<object>(null); } To nie działa: public async Task MethodName() { return...

123
Jak mogę używać Async z ForEach?

Czy można używać Async podczas korzystania z ForEach? Poniżej kod, który próbuję: using (DataContext db = new DataLayer.DataContext()) { db.Groups.ToList().ForEach(i => async { await GetAdminsFromGroup(i.Gid); }); } Otrzymuję błąd: Nazwa „Async” nie istnieje w obecnym...