Имеется цикличный буфер, который непрерывно заполняется в фоновом потоке. Мне необходимо раз в секунду считывать его и обновлять UI интерфейс. Вопросы связанные с этим.
Использование async/await для заполнения буфера, правильно ли это?
public async Task ReceiveAsync(CancellationToken ct)
{
await Task.Run(() => Receive(progressData));
}
Обновление UI раз в секунду я представляю себе так: передаю данные посредством IProgress:
IProgress<DTO> progressData = new Progress<DTO>(progressHandler);
Мне кажется этот способ не совсем верным, может можно читать напрямую из UI потока этот буфер который заполняется в другом потоке. Но тогда другой вопрос, чтение и запись одновременно? не возникнут ли проблемы при этом.
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости