Окно Windows с возможностью обновления регионов с высокой частотой

Виталий5 лет в сервисе
Данные заказчика будут вам доступны после подачи заявки
12.07.2020

Доброго времени суток!

Требуется окно с возможностью частого обновления регионов на нем.

Окно должно инициализироваться ссылкой на массив и его размером х*у, этот же размер соответствует размеру окна.

Свой UI-поток создавать не нужно, а должен быть метод Run, который использует взывающий поток для отрисовки окна.

Starvation не критичен.

Должен быть метод обновления региона, который принимает 4 инта - координаты левого верхнего угла и размер региона.

Для вызова метода обновления региона из других потоков метод Run должен принимать ссылку на колбек, который вызывается на UI-потоке.

Желательна обертка на C#, но если это проблематично, то могу сделать и я.

Предполагаемое использование:

1. Создаю поток.

2. Создаю массив.

3. Инициализирую окно.

4. Вызываю метод Run.

5. Из другого потока обновляю некоторые значения массива.

6. Из колбека вызываю обновление региона, который захватывает обновленные в массиве значения. Переход на 5 пункт.

Главное требование к окну - способность стабильно для размера 3000*1000 выполнить 3000 обновлений 1*1000(т.е. обновить последовательно все колонки) в секунду, поэтому для меня видится невозможным использовать SendMessage/PostMessage и приемлемо наличие starvation. В данный момент имеется прототип на C#, который стабильно может обновлять всего лишь 200 колонок в секунду.

Заявки фрилансеров