Блокировка с двумя потребителями получает одинаковые данные - возможно ли это?C#

Место общения программистов C#
Ответить
Anonymous
 Блокировка с двумя потребителями получает одинаковые данные - возможно ли это?

Сообщение Anonymous »

У меня есть блокировка с одним производителем и одним потребителем. Потребитель записывает полученные данные в файл. Мне нужно сделать график в реальном времени из этих данных. < /P>

Можно ли запустить второго потребителя, который нарисовал бы график с одинаковыми данными из коллекции параллельно? Кажется, так работает этот буфер. Я не знаю, как в этом случае потребитель2 попадет на график, который будет частью потока графического интерфейса. < /Li>
< /ol>
// -----------------------------------------------------------------
// A method that fetches data from a queue and writes it to a file.
// It works in a dedicated Task.
// -----------------------------------------------------------------
static void Consumer()
{
while (true)
{
foreach (DataBuffer dataBuffer in collection.GetConsumingEnumerable())
{
_FileStream.Write(dataBuffer.Buffer, 0, dataBuffer.Length);
_FileStream.Flush();
}

// adding dataBuffer to the second consumer here?
}
}
< /code>
Как мне организовать такое приложение оптимально? Данные. Файл.

Подробнее здесь: https://stackoverflow.com/questions/752 ... t-possible
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»