300x250 프로그래밍508 C# Thread Monitor 키워드를 이용한 동기화 using System; using System.Threading; namespace ThreadNTask { class Program { static void Main(string[] args) { Counter counter = new Counter(); Thread increaseThread = new Thread(new ThreadStart(counter.Increase)); Thread decreaseThread = new Thread(new ThreadStart(counter.Decrease)); increaseThread.Start(); decreaseThread.Start(); increaseThread.Join(); decreaseThread.Join(); Console.WriteLine.. 2019. 6. 8. C# Thread lock 키워드를 이용한 동기화 using System; using System.Threading; namespace ThreadNTask { class Program { static void Main(string[] args) { Counter counter = new Counter(); Thread increaseThread = new Thread(new ThreadStart(counter.Increase)); Thread decreaseThread = new Thread(new ThreadStart(counter.Decrease)); increaseThread.Start(); decreaseThread.Start(); increaseThread.Join(); decreaseThread.Join(); Console.WriteLine.. 2019. 6. 8. C# Thread 인터럽트로 종료하기. using System; using System.Threading; namespace ThreadNTask { class Program { static void Main(string[] args) { SlideTask slideTask = new SlideTask(100); Thread thread = new Thread(new ThreadStart(slideTask.KeepAlive)); thread.IsBackground = true; Console.WriteLine("스레드 시작"); thread.Start(); Thread.Sleep(100); Console.WriteLine("스레드 종료"); thread.Interrupt(); Console.WriteLine("스레드가 멈출때까지 대기"); t.. 2019. 6. 8. C# Thread 상태 변화 using System; using System.Threading; namespace ThreadNTask { class Program { static void Main(string[] args) { PrintThreadState(ThreadState.Running); PrintThreadState(ThreadState.StopRequested); PrintThreadState(ThreadState.SuspendRequested); PrintThreadState(ThreadState.Background); PrintThreadState(ThreadState.Unstarted); PrintThreadState(ThreadState.Stopped); PrintThreadState(ThreadState.Wai.. 2019. 6. 8. 이전 1 ··· 106 107 108 109 110 111 112 ··· 127 다음 300x250