Re: Обновление коллекции по событию и одновременное ее чтени
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 05.04.11 15:30
Оценка:
Здравствуйте, D_Alex, Вы писали:

D_A>Есть вот такая подписка на событие


D_A>
D_A>this.Trader.NewTrades += trades => this.GuiAsync(() => _tradesWindow.Trades.AddRange(trades)); //GuiAsync - это аналог Dispatcher.BeginInvoke из фреймворка
D_A>


D_A>этот _tradesWindow.Trades обновляется часто, каждую секунду по нескольку штук обычно.


D_A>Если пробовать в цикле просто обращаться к последнему элементу (только читать) _tradesWindow.Trades, на время прохождения цикла он не меняется, хотя в это время событие уже точно происходит, и не раз. С чем это связано и как это побороть? Если запускать цикл обработки в другом потоке, это поможет? Или вообще невозможен доступ к одному элементу одновременно из разных функций?


Бери Rx и делай обработку асинхронных коллекций.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.