Запитання з тегом «async-await»

Це стосується асинхронної моделі програмування, підтримуваної різними мовами програмування, використовуючи ключові слова асинхронізація та очікування.

3
Як створити асинхронний метод у C #?
Кожна прочитана публікація в блозі розповідає, як споживати асинхронний метод у C #, але чомусь ніколи не пояснюйте, як побудувати свої власні асинхронні методи для споживання. Отже, у мене зараз цей код, який використовує мій метод: private async void button1_Click(object sender, EventArgs e) { var now = await CountToAsync(1000); label1.Text …
196 c#  async-await  c#-5.0 

6
Яке використання Task.FromResult <TResult> у C #
У C # і TPL ( бібліотека паралельних завдань ) Taskклас представляє роботу, що триває, що створює значення типу T. Я хотів би знати, у чому полягає потреба у методі Task.FromResult ? Тобто: У сценарії, коли у вас вже є отримана цінність під рукою, у чому полягає необхідність повернути її …

9
Гніздування чекають у Parallel.ForEach
У програмі метро мені потрібно виконати ряд дзвінків WCF. Здійснюється значна кількість дзвінків, тому мені потрібно робити їх у паралельному циклі. Проблема полягає в тому, що паралельний цикл виходить до завершення дзвінків WCF. Як би ви відреагували, щоб це працювало так, як очікувалося? var ids = new List&lt;string&gt;() { "1", …

6
Як я можу використовувати async / чакати на найвищому рівні?
Я перебирав async/ awaitі переглянувши кілька статей, вирішив перевірити речі сам. Однак я, здається, не можу обернути голову, чому це не працює: async function main() { var value = await Promise.resolve('Hey there'); console.log('inside: ' + value); return value; } var text = main(); console.log('outside: ' + text); Консоль видає наступне …


3
Як знайти, які обіцянки виконуються в Node.js UnhandledPromiseRejectionWarning?
Node.js з версії 7 має синтаксичний цукор async / очікує на обробку обіцянок, і тепер у моєму коді часто виникає таке попередження: (node:11057) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): ReferenceError: Error: Can't set headers after they are sent. (node:11057) DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise …


5
Використовуйте функцію async, що чекає, з Array.map
Дано наступний код: var arr = [1,2,3,4,5]; var results: number[] = await arr.map(async (item): Promise&lt;number&gt; =&gt; { await callAsynchronousOperation(item); return item + 1; }); яка створює таку помилку: TS2322: Введіть 'Обіцяти &lt;номер&gt; []' не можна присвоїти типу 'номер []'. Тип "Обіцяння &lt;номер&gt; не призначається типу" номер ". Як я можу …

14
Конструктор класів Async / Await
На даний момент я намагаюся використовувати async/awaitфункцію конструктора класу. Це так, що я можу отримати спеціальний e-mailтег для проекту Electron, над яким я працюю. customElements.define('e-mail', class extends HTMLElement { async constructor() { super() let uid = this.getAttribute('data-uid') let message = await grabUID(uid) const shadowRoot = this.attachShadow({mode: 'open'}) shadowRoot.innerHTML = ` …

4
Асинхронізація / очікування проти BackgroundWorker
За останні кілька днів я перевірив нові можливості .net 4.5 та c # 5. Мені подобаються його нові функції асинхронізації / очікування. Раніше я використовував BackgroundWorker для обробки довших процесів у фоновому режимі з чуйним інтерфейсом. Моє запитання: після отримання цих нових приємних функцій, коли я повинен використовувати функцію async …

4
Parallel.ForEach vs Task.Run і Task.WhenAll
Які відмінності між використанням Parallel.ForEach або Task.Run () для асинхронного запуску набору завдань? Версія 1: List&lt;string&gt; strings = new List&lt;string&gt; { "s1", "s2", "s3" }; Parallel.ForEach(strings, s =&gt; { DoSomething(s); }); Версія 2: List&lt;string&gt; strings = new List&lt;string&gt; { "s1", "s2", "s3" }; List&lt;Task&gt; Tasks = new List&lt;Task&gt;(); foreach (var …

8
Придушення "попередження CS4014: Оскільки цього дзвінка не чекають, виконання поточного методу продовжується ..."
Це не дублікат "Як безпечно викликати метод асинхронізації в C # без очікування" . Як мені красиво придушити наступне попередження? попередження CS4014: Оскільки цього дзвінка не чекають, виконання поточного методу продовжується до завершення виклику. Подумайте про застосування оператора "в очікуванні" до результату дзвінка. Простий приклад: static async Task WorkAsync() { …
156 c#  async-await 

8
Чи можна чекати події замість іншого методу асинхронізації?
У моєму додатку метро C # / XAML є кнопка, яка починає тривалий процес. Тому, як рекомендується, я використовую async / очікую, щоб переконатися, що нитка інтерфейсу не блокується: private async void Button_Click_1(object sender, RoutedEventArgs e) { await GetResults(); } private async Task GetResults() { // Do lot of complex …

2
Що стосується використання 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( () =&gt; Console.WriteLine("Hello from taskA.")); // Start the …

6
Чи є який-небудь еквівалент асинхроніки Process.Start?
Як підказує заголовок, чи є еквівалент Process.Start(дозволяє запустити інший додаток або пакетний файл), якого я можу чекати? Я граю з невеликим консольним додатком, і це здавалося ідеальним місцем для використання асинхронізації та очікування, але я не можу знайти жодної документації для цього сценарію. Що я думаю, є щось таке: void …
141 c#  async-await  c#-5.0 

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.