우리는 기존의 Win32와 WPF 버전의 블로터 소프트웨어를 가지고 있습니다. 그러나 WPF 응용 프로그램을 실행하면 종종 Win32 응용 프로그램의 다시 그리기 속도가 느려집니다.WPF/Win32 응용 프로그램을 나란히 실행하면 성능 문제가 발생합니까?
WPF 응용 프로그램을 실행 (또는 최소화)하지 않으면 Win32 응용 프로그램에서 그리기 속도가 빠르고 유동적입니다. WPF 응용 프로그램을 함께 열면 Win32 응용 프로그램의 UI 그리기 속도가 크게 느려집니다. WPF 응용 프로그램을 실행하면 Win32 응용 프로그램 (그래픽이 무거움)에서 제거되는 일부 리소스가 사용되는 것 같습니다. 속도가 느려지는 것 같습니다.
CPU와 메모리는 포화 상태에 가깝지 않으므로 관련이 없습니다. 해상도를 낮추거나 표시 할 모니터 수를 줄이면 (따라서 비디오 카드 메모리 사용량과 대역폭로드가 줄어듦) 눈에 띄는 차이가 없으므로 그래픽 하드웨어 성능 문제는 아닙니다. 다음과 같은 원인을 설명 할 수
하나 개의 가설은 다음과 같습니다 후드에서
, 우리가 알고 기본적으로의 명령어 큐 인 창 "메시지 펌프"에 WPF 및 Win32 응용 프로그램을 출력 그래픽 정보를 모두 화면에 무엇을 그려야하는지. WPF 응용 프로그램이 실행되고 있지 않을 때 Win32에는 자유롭게 액세스 할 수 있고 화면 업데이트는 유동적 인 것처럼 보입니다. WPF 응용 프로그램을 실행하면 추가 메시지가이 큐에 저장되므로 Win32 응용 프로그램은 각 화면 요소 업데이트를 수행하기 위해 더 많이 경쟁해야하므로 "펌프를 막히는"효과가 나타납니다.
위와 같은 경우에는 누구든지이 문제를 방지하기 위해 창 메시지 펌프를 관리/제어하는 방법을 권장 할 수 있습니까?
깜박임은 리소스가 부족할 때 일반적으로 발생하는 유형으로, 개별 요소 (양식, 레이블)가 깜박 거리고 점차적으로 화면에 그려지는 것을 볼 수 있습니다.
의견이나 아이디어가있는 분은 알려주십시오.
감사합니다. Google에서이 문제를 조사하고 있습니다. –
직접적인 해결책은 아니지만 올바른 경로 (하드웨어/소프트웨어 렌더링을 면밀히 살펴야 함)로 안내하여 답변으로 받아들입니다. 감사! –
@ Gaurav 나는 그 지역 주변에있을 것이라고 생각했다. 도움이되기를 기뻐한다. :) –