2012-02-15 1 views
0

많은 양의 줄을 렌더링해야합니다. CPU에는 4 코어가 있으므로 성능을 향상시키기 위해 부분적으로 비트 맵에 다른 스레드로 렌더링하기로 결정했습니다. 이 방법으로 성능을 향상시킬 수 있습니까? 가장 좋은 방법은 무엇입니까?GDI를 사용하는 C# winforms의 비동기 렌더링

+0

몇 줄입니까? –

+0

약 10 000 줄. – PSsam

+0

예, GDI +는 부분적으로 * 스레드로부터 안전합니다. 비트 맵과 관련된 잠금이 있습니다. 동일한 비트 맵에 두 개의 스레드를 그릴 수 없습니다. 그러나 서로 다른 비트 맵에서 작업하게하는 것은 괜찮습니다. 잘못했을 때 큰 소리로 비명을 질렀습니다. –

답변

0

그래픽에 문제가 발생했습니다. 내가 설정 한 경우 :

g.SmoothingMode = SmoothingMode.HighQuality; 

하나 개의 코어는 모든 스레드에 사용되는하지만 난 설정할 때 :

g.SmoothingMode = SmoothingMode.HighSpeed; 

그것을 잘 작동합니다.

관련 문제