Вопросы с тегом «async-await»

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

В чем разница между использованием Parallel.ForEach или Task.Run () для асинхронного запуска набора задач? Версия 1: List<string> strings = new List<string> { "s1", "s2", "s3" }; Parallel.ForEach(strings, s => { DoSomething(s); }); Версия 2: List<string> strings = new...

156
Подавление «предупреждение CS4014: поскольку этот вызов не ожидается, выполнение текущего метода продолжается ...»

Это не дубликат «Как безопасно вызвать асинхронный метод в C # без ожидания» . Как мне приятно подавить следующее предупреждение? предупреждение CS4014: поскольку этот вызов не ожидается, выполнение текущего метода продолжается до завершения вызова. Попробуйте применить оператор 'await' к...

156
Можно ли ожидать событие вместо другого асинхронного метода?

В моем приложении C # / XAML metro есть кнопка, которая запускает длительный процесс. Итак, как рекомендовано, я использую async / await, чтобы убедиться, что поток пользовательского интерфейса не заблокирован: private async void Button_Click_1(object sender, RoutedEventArgs e) { await...

149
Как дождаться завершения асинхронного метода?

Я пишу приложение WinForms, которое передает данные на устройство класса USB HID. В моем приложении используется отличная Generic HID library v6.0, которую можно найти здесь . Вкратце, когда мне нужно записать данные на устройство, вызывается следующий код: private async void...

146
Есть ли асинхронный эквивалент Process.Start?

Как следует из названия, есть ли эквивалент Process.Start(позволяющий запускать другое приложение или пакетный файл), которого я могу ждать? Я играю с небольшим консольным приложением, и это показалось мне идеальным местом для использования async и await, но я не могу найти никакой документации...

145
Что касается использования Task.Start (), Task.Run () и Task.Factory.StartNew ()

Я только что видел 3 процедуры использования TPL, которые выполняют ту же работу; вот код: public static void Main() { Thread.CurrentThread.Name = "Main"; // Create a task and supply a user delegate by using a lambda expression. Task taskA = new Task( () => Console.WriteLine("Hello from...

139
Асинхронная операция Entity Framework занимает в десять раз больше времени

У меня есть сайт MVC, использующий Entity Framework 6 для обработки базы данных, и я экспериментировал с его изменением, чтобы все работало как асинхронные контроллеры, а вызовы базы данных выполнялись как их асинхронные аналоги (например, ToListAsync () вместо ToList ()) Проблема, с которой я...

139
Параллельный foreach с асинхронной лямбдой

Я хотел бы обрабатывать коллекцию параллельно, но у меня проблемы с ее реализацией, поэтому я надеюсь на некоторую помощь. Проблема возникает, если я хочу вызвать метод, помеченный как async в C #, в лямбда-выражении параллельного цикла. Например: var bag = new ConcurrentBag<object>();...

139
Как получить ожидаемую тему. Сон?

Я пишу сетевое приложение, основанное на парадигме ожидания / сна. Иногда возникают ошибки подключения, и по моему опыту стоит подождать некоторое время, а затем повторить попытку. Проблема заключается в том, что если я использую Thread.Sleep или другую подобную операцию блокировки в await / async,...

137
Использование async-await в .net 4

В настоящее время я начинаю создавать приложение, которое получило бы много пользы от функции async-await в C # 5. Но я не уверен, какую версию VS и асинхронной среды выполнения использовать. Если посмотреть на графики популярности ОС, мне нужно будет поддерживать Windows XP еще около трех лет....

135
предупреждение: этот вызов не ожидается, выполнение текущего метода продолжается

Только что получил VS2012 и пытаюсь разобраться async. Допустим, у меня есть метод, который получает какое-то значение из источника блокировки. Я не хочу, чтобы вызывающий метод блокировал. Я мог бы написать метод для приема обратного вызова, который вызывается при поступлении значения, но...

133
Как реализовать метод делегата асинхронного действия?

Немного справочной информации. Я изучаю стек веб-API и пытаюсь инкапсулировать все данные в виде объекта «Результат» с такими параметрами, как Success и ErrorCodes. Однако разные методы дадут разные результаты и коды ошибок, но объект результата обычно создается одинаково. Чтобы сэкономить время, а...

131
async await return Task

Может кто-нибудь объяснить, что это значит для синхронного метода? Если я попытаюсь изменить метод, asyncVS будет жаловаться на это. Это работает: public Task MethodName() { return Task.FromResult<object>(null); } Это не работает: public async Task MethodName() { return...

130
Является ли async HttpClient из .Net 4.5 плохим выбором для приложений с интенсивной нагрузкой?

Недавно я создал простое приложение для тестирования пропускной способности HTTP-вызовов, которое можно сгенерировать асинхронно по сравнению с классическим многопоточным подходом. Приложение может выполнять заранее определенное количество HTTP-вызовов и в конце отображает общее время, необходимое...

130
Использование файловой системы в node.js с помощью async / await

Я хотел бы использовать async / await с некоторыми операциями файловой системы. Обычно async / await отлично работает, потому что я использую babel-plugin-syntax-async-functions. Но с этим кодом я сталкиваюсь с случаем if, где namesundefined: import fs from 'fs'; async function myF() { let names;...

127
Почему я должен предпочесть одно ожидание Task.WhenAll нескольким ожиданиям?

В случае, если меня не волнует порядок выполнения задач и мне просто нужно, чтобы они все выполнялись, следует ли мне использовать await Task.WhenAllвместо нескольких await? например, DoWork2ниже предпочтительный метод DoWork1(и почему?): using System; using System.Threading.Tasks; namespace...

126
'await' работает, но при вызове task.Result зависает / блокируется

У меня есть следующие четыре теста, и последний зависает, когда я его запускаю. Почему это происходит: [Test] public void CheckOnceResultTest() { Assert.IsTrue(CheckStatus().Result); } [Test] public async void CheckOnceAwaitTest() { Assert.IsTrue(await CheckStatus()); } [Test] public async void...

123
Как я могу использовать Async с ForEach?

Можно ли использовать Async при использовании ForEach? Ниже приведен код, который я пытаюсь выполнить: using (DataContext db = new DataLayer.DataContext()) { db.Groups.ToList().ForEach(i => async { await GetAdminsFromGroup(i.Gid); }); } Я получаю сообщение об ошибке: Имя Async не существует в...

122
SyntaxError: неожиданная функция токена - Async Await Nodejs

Я экспериментировал с использованием Node версии 6.2.1 с некоторым кодом. Были планы перенести большинство кодов, ориентированных на гипер-обратный вызов, на что-то, что выглядит чище и, возможно, работает лучше. Понятия не имею, почему терминал выдает ошибку, когда я пытаюсь выполнить код узла....