728x90
반응형
WPF & C# - 멀티쓰레딩 ( 멀티쓰레드 / MultiThread / Threading / 스레드 ) |
private void btn_Click(object sender, RoutedEventArgs e)
{
lbl.Content = "";
Thread thread1 = new Thread(new ThreadStart(Thread1));
Thread thread2 = new Thread(new ThreadStart(Thread2));
thread1.Start();
thread2.Start();
}
void Thread1()
{
for (int i = 0; i < 10; i++)
{
Dispatcher.Invoke(DispatcherPriority.Normal, new Action(delegate
{
lbl.Content += ("Thread 1 " + "\n");
}));
Thread.Sleep(1000);
}
}
void Thread2()
{
for (int i = 0; i < 10; i++)
{
Dispatcher.Invoke(DispatcherPriority.Normal, new Action(delegate
{
lbl.Content += ("Thread 2 " + "\n");
}));
Thread.Sleep(2000);
}
}
* 메인스레드가 종료되어도 각각의 쓰레드가 종료되어야 앱이 완전히 종료 된다.
그렇지 않으면 메인스레드 종료여부를 체크해서 같이 종료 시켜야 할 듯 하다.
728x90
반응형