저는 몇 시간 동안이 문제를 해결해 냈습니다. 메서드 DrawPath가 System.OutOfMemoryException을 던지고 있습니다.DrawPath (Pen, GraphisPath) OutOfMemoryException을 던지고 있습니다.
필자는 pen.DashPattern이 실제로 System.OutOfMemoryException을 던지고있는 것을 보아서 대시 패턴을 설정했지만 오류를 방지하지는 못했습니다.
using (var pen = new Pen(Color.Black,1.0f))
{
pen.DashPattern = new[]{1.0f};
pen.Transform = context.ReverseTransform;
try
{
using (var temporaryPath = new GraphicsPath(path.PathPoints, path.PathTypes))
{
context.Graphics.DrawPath(pen, temporaryPath);
}
}
}
여기에 도움이 될 것입니다! 미리 감사드립니다!
path.PathPoints 배열의 크기는 얼마나됩니까? – Tigran
PathPoints는 0에서 몇 백까지 달라집니다. – Diogo
코드와 응답을 보면 실제 문제가 여기에 없다고 말할 수 있습니다. Ed 제안과 같은 메모리 프로파일 러 또는 http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx useProcessExploer를 사용할 수 있습니다. 프로그램을 실행하고 함께 작업하십시오. Process Explorer에서 볼 수있는 WorkingSet을 살펴보면 문제의 UX 경로를 파악할 수 있습니다. 32 비트 머신에서 작업 세트가 도착하면 1.2GB의 mem 공간 프로세스가 memoverflow 예외로 이어질 것입니다. 귀하의 회신에 감사드립니다. – Tigran