C#
91.C# - 스레드(Thread) 와 프로세스(Process)
Godffs
2009. 9. 2. 12:59
반응형
스레드(Thread) : 프로세스 안에서 실행하는 단위 프로그램(메서드),
멀티 스래딩 환경(랜덤/가중치에 따라 운영체제에 따라 실행)
스레드 영역에 스레드 올림. 실행순서 중요하지 않을 때 사용
프로세스(Process) : 하나의 프로그램 단위(프로젝트)로 실행중인
응용프로그램을 의미
Program.cs |
static void Main(string[] args) { //Win(); Sql(); Ide(); // 단일 스레드 : 순차적으로 실행 // 멀티 스래딩. ThreadStart 대리자 ThreadStart ts1 = new ThreadStart(Win); ThreadStart ts2 = new ThreadStart(Sql); Thread t1 = new Thread(ts1); Thread t2 = new Thread(ts2); Thread t3 = new Thread(new ThreadStart(Ide)); t3.Priority = ThreadPriority.Highest; //우선순위 높게. 확률이 높아짐 t1.Start(); //실행은 운영체제에 의해서 마음대로 실행 t2.Start(); //실행 할 때마다 결과 다르게 나올 수 있음 t3.Start(); // 프로세스 Process.Start("IExplore.exe"); //익스플로어 실행 Process.Start("Notepad.exe"); //메모장 실행 } private static void Ide() { DelayTime(); Console.WriteLine("[3] IDE : Visual Studio"); } private static void Sql() { Thread.Sleep(5000); //3초 딜레이. 테스트 목적 Console.WriteLine("[2] DBMS : SQL Server"); } private static void Win() { DelayTime(); Console.WriteLine("[1] OS : Windows Server"); } private static void DelayTime() { for (int i = 0; i < 100000000; i++) //시간지연 메서드 { } } |
결과화면 |
![]() 시간차로 메모장과 익스플로러 자동 실행됩니다.
|
91.zip
다운로드
반응형