반응형
    
    
    
  매개변수 없는 Thread(스레드) 실행
//일반 스레드 실행
public void ThreadFunc() {
  //...
}
new Thread(ThreadFunc).Start();
매개변수 있는 Thread(스레드) 실행
//매개변수 스레드 실행 : 파라메타는 object형식으로!
public void ThreadParamFunc(object num) {
  int number = (int)num;
  //...
}
new Thread(new ParameterizedThreadStart(ThreadParamFunc)).Start(num);
무한루프 Thread(스레드) 실행
//무한루프 스레드 예제
bool isThread = true;
public void ThreadFunc() {
  while(isThread) {
    Thread.Sleep(1000);
    //처리...
  }
}
new Thread(ThreadFunc).Start();
//스레드 종료
void threadStop() {
  isThread = false;
}
Thread(스레드) 동기화(해당 루틴이 종료될때까지 재진입 막기)
- Lock이용
System.Object lockObj = new System.Object();
 
void func() {
  lock(lockObj) {
    //처리...
  }
}- Monitor이용
System.Object lockObj = new System.Object();
 
void func() {
  //동기화 시작
  Monitor.Enter(lockObj) {
 
  //처리...
 
  //동기화 종료
  Monitor.Exit(lockObj);
}반응형
    
    
    
  '윈폼(Winform)' 카테고리의 다른 글
| C# 그림자(Shadow) + 그라디언트(Gradient) 배경 라벨(Label) (0) | 2021.11.18 | 
|---|---|
| C# UI Thread Crash 방지(InvokeRequired) (0) | 2021.11.18 | 
| C# 비동기 실행(async, await), 비동기에서 UI처리 (0) | 2021.11.18 | 
| C# 줄바꿈 자동 서식 변경(중괄호 {} 사용시) (0) | 2021.11.18 | 
| C# WinForm 화면 깜빡임 방지 (1) | 2021.11.18 | 




 
											 
											
최근댓글