Чудя се дали е възможно 1) Хостинг на фонова нишка, създадена прозоречна форма вътре в основната нишка на приложението, създадена прозоречна форма? или 2) Отделете нишката, която обработва движенията на мишката, от нишката, която рисува приложение за формуляри на Windows?
Знам, че тези въпроси звучат много налудничаво, но откривам, че се сблъсквам с особен проблем и приветствам съвета да можем да заобиколим този проблем, въпреки че не мисля, че можем лесно да се разделим с Windows Forms и да използваме различни потребителски технологии.
Нашият софтуерен екип пише някои плъгини за приложение за Windows на трета страна. ТАКА че ние предоставяме основна основна форма, която хоства куп потребителски контроли за тях, използвайки техния API и те ги хостват в своя собствена Windows форма. Понастоящем всички потребителски интерфейси се създават в основната нишка на приложението, така че те си взаимодействат добре. Много от нашите потребителски контроли, които предоставяме, имат диаграми на system.windows.forms.datavisualisation, които се рисуват на живо от данните, които приложението извлича. Един от проблемите, които имаме, е, че когато потребителят движи мишката неравномерно, дисплеят спира да се актуализира, тъй като цялото рисуване на графиките (GDI+) се извършва в главната нишка (ние използваме фонови нишки и TPL за извличане и изчисляване на данни, но рисуването се прави на основната нишка). Така че се чудя дали е възможно да накарам цялото gdi+ рисуване на тези диаграми да се извършва в нишка, различна от основната нишка на приложението, така че рисуването да продължи и все още можем да получаваме въведени данни за движение на мишката и щраквания за потребителски взаимодействия, но хаотична мишка движенията не могат да наводнят опашката със съобщения и да спрат рисуването на gdi+ на потребителските контроли.
Всякаква помощ специално, специално указатели към съответните API или статии, демонстриращи техники, ще бъдат много оценени. Благодаря ти.