Окно Windows с возможностью обновления регионов с высокой частотой
Доброго времени суток!
Требуется окно с возможностью частого обновления регионов на нем.
Окно должно инициализироваться ссылкой на массив и его размером х*у, этот же размер соответствует размеру окна.
Свой 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 колонок в секунду.