Изменения документа Tools.Collections

Редактировал(а) Alexandr Fokin 2023/01/11 15:18

<
От версии < 13.1 >
отредактировано Alexandr Fokin
на 2022/12/28 10:33
К версии < 13.3 >
отредактировано Alexandr Fokin
на 2022/12/31 15:41
>
Изменить комментарий: К данной версии нет комментариев

Комментарий

Подробности

Свойства страницы
Содержимое
... ... @@ -58,7 +58,7 @@
58 58  
59 59  Содержит коллекцию, выступающую в роли буфера с возможностями:
60 60  1) Параллельная запись в буфер. (Запись в буфер ведется по одному элементу)
61 -2) Параллельное чтение элементов из буфера, каждый потребитель получает уникальные значения из буфера. В случае, если буфер пуст, то потребитель может асинхронно ожидать поступление нового элемента в буфер.
61 +2) Параллельное асинхронное чтение элементов из буфера, каждый потребитель получает уникальные значения из буфера. В случае, если буфер пуст, то потребитель может асинхронно ожидать поступление нового элемента в буфер.
62 62  У буфера есть параметр RecommendedMaxSize, значение которого учитывается в методе TryAdd, но дополнительно не блокирует хранилище и счетчик Size, поэтому, при параллельной записи, фактический размер буфера может превысить значение RecommendedMaxSize на несколько элементов.
63 63  
64 64  Tools.Collections.Concurrent.AsyncBuffer.Store.IConcurrentStore<T> - внутреннее хранилище буфера (обертка над ConcurrentQueue и ConcurrentStack)
... ... @@ -66,6 +66,7 @@
66 66  
67 67  Классы из Tools.Collections.Concurrent.AsyncBuffer.PriorityWrapper добавляют обертку над IConcurrentStore<T> и IConcurrentBuffer<T>, которая позволяет управлять приоритетами потребления элементов из буфера. По факту для каждого значения приоритета храниться свой собственный IConcurrentStore<T> (задается через конструктор), и элемент считывается из первого непустого IConcurrentStore<T> в порядке приоритета.
68 68  
69 +[[Асинхронность. Async Await>>doc:Разработка.NET.C#.Многопоточность.Асинхронность\. Async Await.WebHome]]
69 69  UDP: сейчас есть [[System. Threading. Channels>>doc:Разработка.NET.Библиотеки.События и потоки.System\. Threading\. Channels.WebHome]].
70 70  
71 71  ----