Лучшие task-parallel-library вопросы ИТ разработчиков

  • 1 голос
  • 1 ответ
  • 0 просмотров
1 ответ

Обработка исключений вне Task

Просто заметил странную вещь: чтобы перехватить исключение в вызывающем из новой задачи, лямбда ДОЛЖНА быть помечена как асинхронная !? Действительно ли это ...

Задан 24 Apr 2015, 13:39 от Arvis
  • 16 голосов
  • 3 ответа
  • 0 просмотров
3 ответа

Как правильно написать Parallel.For с асинхронными методами

Как бы я структурировал приведенный ниже код так, чтобы вызывался асинхронный метод? Parallel.For(0, elevations.Count(), delegate(int i) { allSheets.AddRange(await BuildSheetsAsync(userID, elevations[i], includeLabels)); });

Задан 09 Oct 2013, 22:55 от Filling The Stack is What I DO
  • 15 голосов
  • 1 ответ
  • 0 просмотров
1 ответ

Тупик при объединении удаленного взаимодействия и задач домена приложения

Мое приложение должно загружать плагины в отдельные домены приложений, а затем выполнять некоторый код внутри них асинхронно. Я написал код для переносаTask в маршаллируемых типах: static class RemoteTask { public static async ...

Задан 28 Feb 2013, 18:05 от Cory Nelson
  • 8 голосов
  • 2 ответа
  • 0 просмотров
2 ответа

Асинхронный шаблон на основе событий (EAP)

у приложение, которое использует Socket, и оно будет очень интенсивным, тогда мне действительно нужно использовать каждое ядро, которое у нас есть на нашем большом сервере. Я вижу вопрос (Как использовать ThreadPool для параллельного запуска ...

Задан 29 Apr 2011, 16:32 от Community
  • 7 голосов
  • 2 ответа
  • 0 просмотров
2 ответа

TaskCreationOptions по умолчанию в Task.Run

Почему значение по умолчанию дляCreationOptions изTask создан с использованиемTask.Run являетсяDenyChildAttach скорее, чемNone? Это как-то связано с работой с новымasync а такжеawait в C # 5.0 проще (не позволяя вам избежать текущего ...

Задан 11 May 2013, 16:50 от Kaveh Shahbazian
  • 11 голосов
  • 2 ответа
  • 0 просмотров
2 ответа

Как обновить пользовательский интерфейс из дочерних задач в WinForms

У меня есть простое небольшое приложение winforms, которое выполняет длительный процесс в другом потоке через задачу TPL. Во время этого длительного процесса я хотел бы обновить пользовательский интерфейс (индикатор выполнения или что-то в этом ...

Задан 12 Mar 2012, 19:10 от devlife
  • 4 голосов
  • 4 ответа
  • 0 просмотров
4 ответа

Ожидать многократную асинхронную задачу, одновременно устанавливая максимальное количество запущенных задач

Поэтому я только начал пытаться понять async, Task, lambda и так далее, и я не могу заставить его работать так, как я хочу. С помощью приведенного ниже кода ...

Задан 26 Apr 2014, 20:58 от Brett
  • 259 голосов
  • 2 ответа
  • 0 просмотров
2 ответа

 против

разница междуTask.WaitAll() а такжеTask.WhenAll() из асинхронного ОСАГО? Можете ли вы предоставить пример кода для иллюстрации различных вариантов использования?

Задан 25 May 2011, 11:01 от Yaron Levi
  • 21 голос
  • 4 ответа
  • 0 просмотров
4 ответа

«Await Task.Yield ()» и его альтернативы

Если мне нужно отложить выполнение кода до следующей итерации цикла сообщений потока пользовательского интерфейса, я мог бы сделать что-то вроде этого:

Задан 02 Dec 2013, 01:08 от noseratio
  • 40 голосов
  • 3 ответа
  • 0 просмотров
3 ответа

Отлично работал над проектом Unity (5.5), в котором была именно эта проблема. Спасибо!

я проблема в приложении: в какой-то момент SynchronizationContext.Current становится нулевым для основного потока. Я не могу воспроизвести ту же проблему в изолированном проекте. Мой настоящий проект сложен; он смешивает Windows Forms и WPF и ...

Задан 11 Jan 2011, 15:27 от Sylvain
  • 2 голосов
  • 1 ответ
  • 0 просмотров
1 ответ

Предоставление отмены, если опрос CancellationToken невозможен

Вот's (глупый) пример метода, который блокирует вызывающегоs поток, но не поддерживает отмену:

Задан 10 Dec 2012, 01:36 от Steven Liekens
  • 17 голосов
  • 1 ответ
  • 0 просмотров
1 ответ

Как правильно отменить несколько задач в C #

У меня есть кнопка, которая порождает 4 задачи. Эта же кнопка изменится на кнопку отмены, и нажатие этой кнопки должно отменить все 4 задачи. Должен ли я передать один и тот же токен отмены всем 4 задачам и сделать так, чтобы они опрашивали один ...

Задан 16 Sep 2011, 21:56 от Gullu
  • 8 голосов
  • 6 ответов
  • 0 просмотров
6 ответов

Как правильно сделать Parallel.ForEach, блокировки и отчеты о проделанной работе

Я пытаюсь реализоватьParallel.ForEach шаблон и отслеживать прогресс, но я что-то упускаю в отношении блокировки. В следующем примере считается до 1000, когдаthreadCount = 1, но не когдаthreadCount > 1. Как правильно это сделать? class Program { ...

Задан 24 Jan 2013, 11:51 от John Landheer
  • 76 голосов
  • 4 ответа
  • 0 просмотров
4 ответа

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

Я хотел бы обрабатывать коллекцию параллельно, но у меня возникли проблемы с ее реализацией, и поэтому я надеюсь на некоторую помощь. Проблема возникает, если я хочу вызвать метод, помеченный как асинхронный в C #, в пределах лямбды ...

Задан 28 Feb 2013, 13:16 от clausndk
  • 2 голосов
  • 2 ответа
  • 0 просмотров
2 ответа

Почему всегда распространяется только одно из многих исключений из дочерних задач?

Я изо всех сил пытаюсь лучше понять причину исключений и обработки ошибок в TPL (и с еще большей удачей в .NET 4.5 асинхронных / ожидающих задач) Немного модифицированный из моего предыдущего вопроса«Как лучше понять код / операторы из статьи« ...

Задан 16 May 2013, 06:07 от Gennady Vanin Геннадий Ванин
  • 4 голосов
  • 3 ответа
  • 0 просмотров
3 ответа

Есть ли способ узнать, какие задачи в настоящее время выполняются в библиотеке параллельных задач?

Я не вижу способа увидеть, какие задачи выполняются. Существует свойство Task.Current, но что, если выполняется несколько задач? Есть ли способ получить такую информацию? Альтернативно, есть ли встроенный способ получать уведомления, когда ...

Задан 11 Oct 2009, 19:30 от Mike Two
  • 97 голосов
  • 2 ответа
  • 0 просмотров
2 ответа

Как я могу ждать, пока Parallel.ForEach не завершится

Я использую TPL в своем текущем проекте и использую Parallel.Foreach для вращения многих потоков. Класс Task содержит функцию Wait () для ожидания завершения задачи. Например, как я могу дождаться завершения Parallel.ForEach и затем перейти к ...

Задан 25 Oct 2011, 09:11 от VJAI
  • 3 голосов
  • 3 ответа
  • 0 просмотров
3 ответа

Параллельное программирование с использованием TPL на WinForms

Я пытаюсь использовать TPL на WinForms .NET 4.0, я следовалэтот шаги (перейдите к концу статьи), которые предназначены для WPF и внесли небольшие изменения, ...

Задан 14 Apr 2013, 09:16 от a1204773
  • 63 голосов
  • 2 ответа
  • 0 просмотров
2 ответа

Как Reactive Framework, PLINQ, TPL и Parallel Extensions связаны друг с другом?

По крайней мере, с момента выпуска .NET 4.0 Microsoft, похоже, приложила много усилий для поддержки параллельного и асинхронного программирования, и, похоже, появилось много API и библиотек для этого. Особенно следующие модные имена постоянно ...

Задан 26 Jan 2010, 09:08 от bitbonk
  • 22 голосов
  • 4 ответа
  • 0 просмотров
4 ответа

Отмена отложенной задачи синхронно в потоке пользовательского интерфейса

Иногда, однажды я запросил отмену отложенного задания с CancellationTokenSource.Cancel [http://msdn.microsoft.com/en-us/library/dd321955%28v=vs.110%29.aspx]Мне нужно убедитьсязадача правильно достигла отмененного состоянияпрежде чем я ...

Задан 02 Jan 2014, 05:03 от noseratio
  • 10 голосов
  • 4 ответа
  • 0 просмотров
4 ответа

Как я могу позволить исключениям Задачи распространяться обратно в поток пользовательского интерфейса?

В TPL, если исключение выдаетсязадача [http://msdn.microsoft.com/en-us/library/system.threading.tasks.task.aspx]это исключение фиксируется и сохраняется ...

Задан 16 Dec 2011, 21:45 от Joe White
  • 2 голосов
  • 1 ответ
  • 0 просмотров
1 ответ

Хотите использовать Task Parallel Library с отчетами о проделанной работе для обновления базы данных

Я разработал приложение, в котором хранятся несколько строк подключения. я просто повторяю цикл for и соединяю каждую базу данных и выполняю sql против каждо...

Задан 04 Jun 2013, 06:54 от Thomas
  • 30 голосов
  • 3 ответа
  • 0 просмотров
3 ответа

Обработчик события TaskScheduler.UnobservedTaskException никогда не запускается

Я читаю книгу о параллельной библиотеке задач C # и у меня есть следующий пример, но обработчик TaskScheduler.UnobservedTaskException никогда не запускается....

Задан 19 Jul 2010, 19:03 от devlife
  • 15 голосов
  • 5 ответов
  • 0 просмотров
5 ответов

Поддержка отчетов о прогрессе и дополнительных результатов в .NET 4.0 «Task Parallel Library»

я знаю этоБиблиотека параллельных задач [http://msdn.microsoft.com/en-us/library/dd460693(VS.100).aspx]все еще находится в бета-версии, и, вероятно, будет меньше доступных ресурсов, но из того, что я прочитал, библиотека дает особыйпланирование ...

Задан 08 Oct 2009, 05:20 от Hemant
  • 37 голосов
  • 3 ответа
  • 0 просмотров
3 ответа

Когда использовать BlockingCollection и когда ConcurrentBag вместо List <T>?

принят ответ на вопрос "Почему этот код Parallel.ForEach останавливает программу?" [https://stackoverflow.com/a/8365614/2031316]советует заменить использование спискаConcurrentBag [http://msdn.microsoft.com/en-us/library/dd381779.aspx]в ...

Задан 14 Mar 2013, 02:30 от Fulproof
  • 74 голосов
  • 6 ответов
  • 0 просмотров
6 ответов

 блокирует слишком много времени, затем вы начинаете получать узкие места, так как «обратный вызов» в ContinueWith выполняется из рабочего пула потоков.

ом из моих проектов, который является своего рода агрегатором, я анализирую каналы, подкасты и т. Д. Из Интернета. Если я использую последовательный подход, учитывая большое количество ресурсов, то на их обработку уходит довольно много времени ...

Задан 06 Mar 2011, 21:53 от HuseyinUslu
  • 26 голосов
  • 2 ответа
  • 0 просмотров
2 ответа

Как правильно отменить асинхронную операцию, которая не принимает CancellationToken?

Как правильно отменить следующее? var tcpListener = new TcpListener(connection); tcpListener.Start(); var client = await tcpListener.AcceptTcpClientAsync();Просто звонюtcpListener.Stop() кажется, приводит кObjectDisposedException ...

Задан 25 Jan 2013, 14:49 от Jeff
  • 7 голосов
  • 0 ответов
  • 0 просмотров
0 ответов

Фактически, тот факт, что пример PLINQ использует ToDictionary, теоретически должен сделать его медленнее, поскольку элементы не могут быть добавлены параллельно в отличие от ConcurrentDictionary <K, V>. Фактически, если вы посмотрите на реализацию ToDictionary в ParallelEnumerable, он фактически извлекает элементы из параллельного запроса в восходящем направлении, когда они становятся доступными последовательным способом, чтобы добавлять их в Словарь <K, V> по одному. Так что, по крайней мере, его Parallel :: ForEach должен работать лучше. Смотрите мой ответ, почему я думаю, что это не так.

е: Я изменил с System.Threading.Tasks.Parallel.ForEach и Concurrent Data структуры на простой запрос plinq (Parallel Linq). Ускорение былоудивительно. Так по сути, plinq быстрее, чем Parallel.ForEach? Или это специфично для задачи. // Original ...

Задан 04 Mar 2011, 16:09 от Chris Weber
  • 6 голосов
  • 1 ответ
  • 0 просмотров
1 ответ

Синхронизация по Async позволяет избежать взаимоблокировок и предотвратить реагирование пользовательского интерфейса

У нас есть библиотека, которая используется клиентами WPF и / или Winforms. Мы предоставили асинхронный метод, похожий на: Task<int> GetIntAsync()Мы также (к сожалению) предоставили метод синхронной обертки: int GetInt();который по сути просто ...

Задан 11 Feb 2013, 20:50 от Matt Smith
  • 21 голос
  • 4 ответа
  • 0 просмотров
4 ответа

«Await Task.Yield ()» и его альтернативы

Если мне нужно отложить выполнение кода до следующей итерации цикла сообщений потока пользовательского интерфейса, я мог бы сделать что-то вроде этого: await Task.Factory.StartNew( () => { MessageBox.Show("Hello!"); }, CancellationToken.None, ...

Задан 02 Dec 2013, 02:08 от noseratio
  • 3 голосов
  • 1 ответ
  • 0 просмотров
1 ответ

Отсутствие не захвата Task.Yield заставляет меня использовать Task.Run, зачем это нужно?

Заранее извиняюсь, если этот вопрос основан на мнении. ОтсутствиеTask.Yield версия, которая бы незахватить контекст выполнения уже обсуждалсяВот.По-видимому,...

Задан 13 Sep 2013, 04:10 от noseratio
Page 1 of 10
1 2 3 4 5