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

86
Использование ожидания вне асинхронной функции

Я пытался связать две асинхронные функции вместе, потому что первая имела параметр условного возврата, из-за которого вторая либо запускалась, либо выходила из модуля. Однако я обнаружил странное поведение, которое не смог найти в спецификациях. async function isInLobby() { //promise.all([chained...

85
Ожидание в блоке улова

У меня такой код: WebClient wc = new WebClient(); string result; try { result = await wc.DownloadStringTaskAsync( new Uri( "http://badurl" ) ); } catch { result = await wc.DownloadStringTaskAsync( new Uri( "http://fallbackurl" ) ); } В основном я хочу загрузить с URL-адреса, а когда это не...

83
Что делает новая функция C # await? [закрыто]

Закрыто . Этот вопрос должен быть более конкретным . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он фокусировался только на одной проблеме, отредактировав этот пост . Закрыт 4 года назад . Уточните этот вопрос Может ли кто-нибудь объяснить, что...

83
Правильный способ получить CoreDispatcher в приложении Windows Store

Я создаю приложение Windows Store, и у меня есть код, который нужно опубликовать в потоке пользовательского интерфейса. Для этого я хотел бы получить CoreDispatcher и использовать его для публикации кода. Похоже, есть несколько способов сделать это: // First way...

83
Как я могу предотвратить синхронное продолжение задачи?

У меня есть код библиотеки (сети сокетов), который предоставляет TaskAPI-интерфейс для ожидающих ответов на запросы на основе TaskCompletionSource<T>. Однако в TPL есть недостаток, заключающийся в невозможности предотвратить синхронное продолжение. Я бы хотел либо: сообщить,...

81
Является ли ключевое слово Async await эквивалентом лямбда-выражения ContinueWith?

Может ли кто-нибудь быть достаточно любезным, чтобы подтвердить, правильно ли я понял ключевое слово Async await? (Используется версия 3 ОСАГО) До сих пор я выяснил, что вставка ключевого слова await перед вызовом метода, по сути, делает 2 вещи: A. Он создает немедленный возврат и B. Он создает...

79
Почему нельзя распознать модульные тесты async void?

async void модульные тесты нельзя запускать в Visual Studio 2012: [TestClass] public class MyTestClass { [TestMethod] public async void InvisibleMyTestMethod() { await Task.Delay(1000); Assert.IsTrue(true); } } Если я хочу иметь асинхронный модульный тест, метод теста должен возвращать Task:...

63
Асинхронная функция с + =

let x = 0; async function test() { x += await 5; console.log('x :', x); } test(); x += 1; console.log('x :', x); Выполнить фрагмент кодаСкрыть результатыРазвернуть фрагмент Значения xвошли в систему 1и 5. Мой вопрос: почему значение x 5второго журнала? Если testпосле выполняется x += 1(так как это...

20
Правильный способ обработки исключений в AsyncDispose

При переходе на новые .NET Core 3 IAsynsDisposableя наткнулся на следующую проблему. Суть проблемы: если DisposeAsyncвыбрасывает исключение, это исключение скрывает любые исключения, созданные внутри await using-блока. class Program { static async Task Main() { try { await using (var d = new D()) {...

14
Почему продолжения Task.When Все выполняются синхронно?

Я только что сделал любопытное замечание относительно Task.WhenAllметода при работе на .NET Core 3.0. Я передал простую Task.Delayзадачу в качестве единственного аргумента Task.WhenAllи ожидал, что завернутая задача будет вести себя идентично исходной задаче. Но это не так. Продолжения исходной...

11
Использование для ожидания ... с синхронными итерациями

MDN говорит, что for await...of есть два варианта использования: for await...ofОператор создает петлю итерации асинхронной итерации объектов, а также на итерируемых синхронизации, ... Ранее я знал о первом: использование асинхронных итераций Symbol.asyncIterator. Но сейчас меня интересует...

10
Как использовать Rust async fn, который принимает ссылку в качестве обратного вызова?

async fnвозвращает реализованный анонимный тип Future, поэтому, если мы хотим использовать его в качестве обратного вызова, нам нужно преобразовать возвращаемое значение в объект-признак. Я пытался написать функцию, чтобы сделать это, но у меня были некоторые проблемы на всю жизнь. async fnвернет...

10
Возвращение IAsyncEnumerable <T> и NotFound из основного контроллера Asp.Net

Какова правильная подпись для действия контроллера, которое возвращает IAsyncEnumerable<T>и, NotFoundResultно все еще обрабатывается асинхронно? Я использовал эту подпись, и она не компилируется, потому что IAsyncEnumerable<T>не является ожидаемой: [HttpGet] public async...

10
Как заблокировать поток кода, пока не произойдет событие в C #

Здесь у нас есть Gridс собой Button. Когда пользователь нажимает кнопку, выполняется метод в классе Utility, который заставляет приложение получать щелчок по Grid. Поток кода должен останавливаться здесь и не продолжаться до тех пор, пока пользователь не нажмет на Grid. У меня был подобный вопрос,...

9
Как объявить незапущенную задачу, которая будет ожидать другую задачу?

Я провел этот модульный тест, и я не понимаю, почему "await Task.Delay ()" не ждет! [TestMethod] public async Task SimpleTest() { bool isOK = false; Task myTask = new Task(async () => { Console.WriteLine("Task.BeforeDelay"); await Task.Delay(1000); Console.WriteLine("Task.AfterDelay"); isOK =...

9
Шаблон для делегирования асинхронного поведения в C #

Я пытаюсь создать класс, который предоставляет возможность добавлять проблемы асинхронной обработки. В синхронном программировании это может выглядеть так public class ProcessingArgs : EventArgs { public int Result { get; set; } } public class Processor { public event...