Запитання з тегом «asynchronous»

Асинхронне програмування - це стратегія відстрочки операцій з високою затримкою або низьким пріоритетом, як правило, у спробі покращити продуктивність, чуйність та / або комбінованість програмного забезпечення. Такі стратегії, як правило, використовуються з використанням деякої комбінації програмування та зворотних викликів, керованих подіями, і необов'язково з використанням паралельності за допомогою процедур та / або потоків.


4
Команда сну в T-SQL?
Чи є спосіб написати команду T-SQL, щоб просто спати протягом певного періоду часу? Я пишу веб-службу асинхронно і хочу, щоб я міг запустити деякі тести, щоб побачити, чи справді асинхронний візерунок зробить його більш масштабованим. Для того, щоб "знущатися над" зовнішньою службою, яка повільно, я хочу мати можливість зателефонувати на …


2
Коли правильно використовувати Task.Run і коли просто async-wait
Я хотів би поцікавитись вашою думкою щодо правильної архітектури, коли користуватися Task.Run. У нашому додатку WPF .NET 4.5 (із рамкою Caliburn Micro) у мене слабкий інтерфейс користувача. В основному я роблю (дуже спрощені фрагменти коду): public class PageViewModel : IHandle<SomeMessage> { ... public async void Handle(SomeMessage message) { ShowLoadingAnimation(); // …

6
HttpClient.GetAsync (…) ніколи не повертається під час використання функції wait / async
Edit: Це питання буде схожий на це може бути та ж проблема, але не має жодних відповідей ... Редагувати: У тестовому випадку 5 завдання, здається, застрягло у WaitingForActivationстані. Я стикався з деякою дивною поведінкою за допомогою System.Net.Http.HttpClient в .NET 4.5 - де "очікування" результату дзвінка до (наприклад) httpClient.GetAsync(...)ніколи не повернеться. …

4
Як я можу обмежити Parallel.ForEach?
У мене є цикл асинхронізації Parallel.ForEach (), за допомогою якого я завантажую деякі веб-сторінки. Моя пропускна здатність обмежена, тому я можу завантажувати лише x сторінок за раз, але Parallel.ForEach виконує весь список потрібних веб-сторінок. Чи є спосіб обмежити кількість потоку або будь-який інший обмежувач під час роботи Parallel.ForEach? Демо-код: Parallel.ForEach(listOfWebpages, …

6
Ловіть виняток, викинутий методом анулювання анулювання
Використовуючи асинхронний CTP від ​​Microsoft для .NET, чи можна зловити виняток, викинутий методом async в методі виклику? public async void Foo() { var x = await DoSomethingAsync(); /* Handle the result, but sometimes an exception might be thrown. For example, DoSomethingAsync gets data from the network and the data is …

7
Як відхилити синтаксис async / wait?
Як я можу відхилити обіцянку, повернуту функцією асинхрон / очікування? наприклад, спочатку foo(id: string): Promise<A> { return new Promise((resolve, reject) => { someAsyncPromise().then((value)=>resolve(200)).catch((err)=>reject(400)) }); } Перевести на асинхронізацію / очікувати async foo(id: string): Promise<A> { try{ await someAsyncPromise(); return 200; } catch(error) {//here goes if someAsyncPromise() rejected} return 400; //this …

8
Запуск декількох завдань асинхронізації та очікування їх завершення
Мені потрібно запустити кілька завдань на асинхронізацію в консольному додатку та дочекатися їх завершення перед подальшою обробкою. Статей там багато, але я, мабуть, більше плутаю, чим більше читаю. Я прочитав і зрозумів основні принципи бібліотеки завдань, але явно десь пропускаю посилання. Я розумію, що можна ланцюжок завдань таким чином, щоб …

14
Зворотний виклик після завершення асинхронних зворотних викликів для кожного
Як випливає з назви. Як це зробити? Я хочу зателефонувати whenAllDone()після того, як цикл forEach пройшов кожен елемент і провів деяку асинхронну обробку. [1, 2, 3].forEach( function(item, index, array, done) { asyncFunction(item, function itemDone() { console.log(item + " done"); done(); }); }, function allDone() { console.log("All done"); whenAllDone(); } ); …

11
Якщо async-await не створює додаткових потоків, то як вони роблять програми реагуючими?
Знову і знову, я бачу, що сказано, що використання async- awaitне створює додаткових потоків. Це не має сенсу, оскільки єдиний спосіб, за яким комп'ютер може здатися робити більше ніж одну річ, - це Насправді виконуючи більше однієї речі одночасно (виконуючись паралельно, використовуючи декілька процесорів) Моделювання його шляхом планування завдань та …

2
Чим відрізняється асинхронне програмування від багатопотокового?
Я подумав, що вони в основному те саме - писати програми, які розділяють завдання між процесорами (на машинах, які мають 2+ процесори). Потім я читаю це , що говорить: Методи асинхронізації призначені для неблокуючих операцій. Вираз очікування в методі асинхронізації не блокує поточний потік під час виконання очікуваного завдання. Натомість …

3
Розуміння dispatch_async
У мене є питання щодо цього коду dispatch_async(dispatch_get_global_queue( DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ NSData* data = [NSData dataWithContentsOfURL: kLatestKivaLoansURL]; [self performSelectorOnMainThread:@selector(fetchedData:) withObject:data waitUntilDone:YES]; }); Перший параметр цього коду dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0) Чи ми просимо цей код виконувати послідовні завдання на глобальній черзі, визначення яких саме полягає в тому, що він повертає глобальну паралельну …

12
Виклик асинхронного методу синхронно
У мене є asyncметод: public async Task<string> GenerateCodeAsync() { string code = await GenerateCodeService.GenerateCodeAsync(); return code; } Мені потрібно викликати цей метод із синхронного методу. Як я можу це зробити без копіювання GenerateCodeAsyncметоду для того, щоб це працювало синхронно? Оновлення Однак розумного рішення не знайдено. Однак я бачу, що HttpClientвже …

14
Чиста, легка альтернатива крученому Python? [зачинено]
Зачинено. Це питання не відповідає вказівкам щодо переповнення стека . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб воно було тематичним для переповнення стека. Закрито 5 років тому . Удосконаліть це питання Нещодавно я писав веб-павук, який багатопотоково читав, щоб одночасно виникати одночасні запити. Це було в …

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