이 코드에서이 오류가 어떻게 발생하는지 정말로 이해하지 못합니다. 코드를 직접 확인하십시오.보호 된 메모리를 읽거나 쓰려고 시도했습니다. 이것은 종종 다른 메모리가 손상되었음을 나타냅니다.
void dispatcherTimer_Tick(object sender, EventArgs e)
{
string srUrl = lstLocalIndex[irLocalIndex] + lstMainIndex[irMainIndex].Replace("0;","");
Task.Factory.StartNew(() =>
{
startNewWindow(srUrl);
});
}
void startNewWindow(string srUrl)
{
NewWindowThread<TitleWindow, string>(c => new TitleWindow(c), srUrl);
}
이제이 코드는 오류가 발생한 곳입니다. 나는 또한이 오류는 전체 소프트웨어 던져 오류가 발생합니다 스크린 샷을
private void NewWindowThread<T, P>(Func<P, T> constructor, P param) where T : Window
{
Thread thread = new Thread(() =>
{
T w = constructor(param);
w.Show();
w.Closed += (sender, e) => w.Dispatcher.InvokeShutdown();
try
{
System.Windows.Threading.Dispatcher.Run();
}
catch
{
}
});
thread.SetApartmentState(ApartmentState.STA);
try
{
thread.Start();
}
catch
{
}
}
를 부착하고 난 새 스레드에서 그들을 호출 오전에도 :(
이 줄 던지는 오류 System.Windows.Threading.Dispatcher을 작동이 중지됩니다. 실행();이
을 또한 확인 스크린 샷하세요 0C# 4.0 WPF
실제로'Task'에있는 스레드와'Thread'에있는 * 두 개의 스레드를 사용하고 있습니다. 스레드의 시작 코드로 실행하려는 코드를 배치하는 것이 좋습니다. – casperOne
@casperOne 나는 여전히 응용 프로그램이 충돌하는 것을 시도했다. 그리고 이것은 잠시 후에 즉시 일어나지 않습니다. 그것은 30 분처럼 실행 후 충돌합니다. 충돌 시간이 변경됩니다. – MonsterMMORPG
아니, 그들은 당신의 기억이 깨 졌다고 말한다. 그렇게되어야합니다! (btw는 내가 '불특정 오류'이후에 만난 가장 멍청한 오류 메시지입니다.) – leppie