Описание тега blockingcollection

Класс.Net, который обеспечивает возможности блокировки и ограничения для поточно-ориентированных коллекций.
2 ответа

BlockingCollection<T>.GetConsumingEnumerable () блокировка на дополнительное условие

Возможно ли иметь BlockingCollection&lt;T&gt; (JobQueue в моем примере) выполнение блока на обоих GetConsumingEnumerable() стрим И по каким другим критериям? У меня есть состояние availableSlots &gt; 0 который позволяет использовать предметы только …
0 ответов

Пакетная обработка при использовании блокирующей коллекции

У меня есть блокирующий набор, который должен быть обработан в течение 5 минут. Щас пользуюсь GetConsumingEnumerable() но я не хочу этого, вместо этого мне нужно пакетный процесс. var reqs = MessageFactory.NetApiRequestQueue.GetConsumingEnumerable(t…
01 авг '17 в 07:26
1 ответ

Производитель / Потребитель, BlockingCollection и ожидание изменений

Я пытаюсь обернуть голову вокруг BlockingCollection и моей проблемы производителя / потребителя. Чего я хочу добиться, так это следующего: Поточно-ориентированная очередь для хранения списка объектов ("заданий") в формате FIFO. Вторая потокобезопасн…
1 ответ

Неправильное понимание concurrentQueue, единственного потребителя, работающего из очереди в своем собственном потоке

У меня возникают проблемы при создании работающего SystemFileWatcher, который принимает созданное событие и сохраняет его в очереди для работы с отдельным потоком. Я прочитал бесчисленные темы здесь по этой проблеме, но я не могу разобраться в этой …
2 ответа

Использование Blocking Collection для доступа к базе данных и загрузки изображений в C#

Я работаю над программой, в которой есть две кнопки на форме. Первый выполняет функцию доступа к базе данных, а другой загружает изображение из базы данных и сохраняет его вместе с 3 копиями изображения (Thumbnail, zoom, small). Код для доступа к ба…
2 ответа

Разница между Take/TryTake и Add/TryAdd для блокирующей коллекции

Я пытался разобраться с коллекцией блокировок, и я наткнулся на Take() а также TryTake() также Add() а также TryAdd() Я понимаю, что если нет вещей, которые можно взять, Take() будет ждать, пока элемент будет добавлен, аналогично Add() если коллекци…
1 ответ

Словарь, содержащий блокирующие коллекции разных типов без приведения

Могу ли я установить словарь MyDict&lt;Type, BlockingCollection&lt;"differentTypes"&gt; возможно, через интерфейс, который обходит любое преобразование, предотвращая использование объектов или динамических типов? Причина, по которой я хочу использов…
1 ответ

Не могу добавить предметы в коллекцию во втором раунде

По сути, у меня есть блокирующая коллекция в моем приложении службы Windows, каждый раз, когда я хочу добавить 4 элемента в коллекцию, а затем обработать ее. Первый раунд в порядке, но второй раунд не удался. Ошибка BlockingCollection была отмечена …
08 авг '14 в 13:43
1 ответ

BlockingCollection не выполняется должным образом

У меня есть метод, который вызывает переданный Func в фоновом потоке под названием TaskSpin, Это делает один метод за один раз на основе сайта, на который нажали DataGridView (DGV), и он ДОЛЖЕН делать ТОЛЬКО по одному за раз. Поэтому я нажимаю на са…
01 авг '12 в 17:04
1 ответ

Можно ли использовать Pika BlockingConnection в веб-приложении?

Я немного смущен BlockingConnection а также AsyncoreConnection, Я хочу отправить несколько сообщений в очередь RabbitMQ из приложения Django. Это нормально делать это с помощью глобального BlockingConnection объект? Благодарю вас.
30 июл '14 в 22:29
0 ответов

.NET Async vs Blocking: почему async так разочаровывает?

Операции блокировки оказываются быстрее? Или это то, что вы получаете реальную выгоду только тогда, когда он "полностью асинхронен?" Поэтому я провел довольно много времени за годы работы с многопоточными приложениями и оптимизацией для параллелизма…
0 ответов

Вставить элемент в коллекцию BlockingCollection

Можно ли вставить элемент в первую позицию (или пронумерованную позицию) в -не пустой- BlockingCollection? Точно так же, как с "Вставить" метод списка. Что-то вроде: blockingCollectionObject.Insert(0, anObject);
15 июл '14 в 13:02
1 ответ

Почему комбинация Backgroundeworker + BlockingCollection медленнее?

У меня есть программа для доступа к базе данных и загрузки изображений. Я использовал BlockingCollection для этой цели. Однако для доступа к некоторым элементам пользовательского интерфейса я решил использовать комбинацию Backgroundworker а также Bl…
09 апр '14 в 16:29
1 ответ

Как правильно использовать BlockingCollection.GetConsumingEnumerable?

Я пытаюсь реализовать шаблон производителя / потребителя, используя BlockingCollection&lt;T&gt; поэтому я написал простое консольное приложение для его тестирования. public class Program { public static void Main(string[] args) { var workQueue = new…
2 ответа

Как использовать BlockingCollection<T>, чтобы заблокировать всех производителей, пока не будут использованы все элементы (пакетное потребление)?

Я прочитал несколько похожих ссылок, но не одинаковых, пытаясь найти ответы на некоторые вопросы: Как использовать BlockingCollection в пакетном режиме Однако (в приведенной выше ссылке) неиспользование GetConsumingEnumerable выглядит подозрительно.…
06 апр '15 в 20:10
1 ответ

Многопоточный дизайн для API

Я реализую API. Фронт-эндом, скорее всего, будет REST/HTTP, бэкэнд-MSSQL, с легким промежуточным звеном между ними. Вероятно, IIS размещен. К каждому входящему запросу будет прикреплен неуникальный идентификатор. Любые запросы, которые имеют один и …
24 ноя '18 в 00:22
2 ответа

Сообщения теряются при использовании из BlockingCollection в пакетах

Я пытался изобрести метод для потребления партии из BlockingCollection и попал в беду. Вот минимальное воспроизведение: internal class Program { private static readonly BlockingCollection&lt;string&gt; _bc = new BlockingCollection&lt;string&gt;(1000…
0 ответов

Потребитель BlockingCollection повторяет вывод

TL;DR У меня есть приложение, которое читает сообщения с USB-устройства в фоновом режиме и отображает сообщения на экране. Я использую BlockingCollection, так как мне нужно быстро читать сообщения, чтобы устройство не получало BufferOverflow. Я чита…
0 ответов

BlockingCollection с возможностью переустановки максимального количества элементов во время выполнения

У меня есть BlockingCollection который я использую в классическом примере типа публикация-подписка, где коллекция работает как буфер. Когда он достигает N, он должен ждать, пока читатели потребят хотя бы один предмет. Это отлично работает. Теперь я …
30 июн '13 в 17:22
1 ответ

Удаление элементов из BlockingCollection и заполнение Observable Collection

У меня есть сценарий использования, в котором я хочу вставить и удалить пользовательский объект (Акции) из коллекции блокировок (более крупное изображение - очередь потребителя производителя). Постановка задачи в точности аналогична этой теме - обно…