반응형
    
    
    
  스레드는 무엇일까요?
                    
        
스레드(thread)는 어떠한 프로그램 내에서, 특히 프로세스 내에서 실행되는 흐름의 단위를 말한다. 일반적으로 한 프로그램은 하나의 스레드를 가지고 있지만, 프로그램 환경에 따라 둘 이상의 스레드를 동시에 실행할 수 있다. 이러한 실행 방식을 멀티스레드(multithread)라고 한다.
(_ 위키피디아 발췌)
C#  및 프로그래밍 입장에서 보면 어떤 프로그램에서 실행되는 함수를 말한다고 할수 있습니다.
또한 멀티스레드는 한프로그램에서 두개 이상의 함수가 동시에 불리는것(실행)되는것 이라고 할수 있습니다.
*스레드 생성했을 때 주의 할 점
 1. Priority
 2. Synchronization
입니다.
쉽게 말해 1.priority 우선권 입니다.
예를 들어 
A() 함수와 B()라는 함수가 실행되고 있을 때 변수 i 를 동시에 접근한다고 생각해 봅시다
만약 두개가 동시에 접근을 하면 나중에 프로그래머가 원하는값이 안나올수도 있습니다. 그렇기 떄문에 Priority 즉 두개의 함수 중 어떤 함수가 먼저 우선 변수 i 에 접근을 할수 있게 할것인지 정해줘야 합니다.
2.Synchronization동기화 입니다.
A()함수와 B()함수가 변수 i 에 접근을 하여 값을 계산 하는데 서로 값이 같지 않다면 나중에 문제가 생길것입니다. 이것을 막기위해 즉 똑같이 하기위해 동기화 라는게 필요 합니다.
반응형
    
    
    
  'IT > C#, NHibernate' 카테고리의 다른 글
| C# _ 멀티스레드,ManualResetEvent,동기화 를 시켜보자 (2) | 2010.09.23 | 
|---|---|
| C# _ 멀티스레드 생성법 과 스레드 시작메소드 [start()] (0) | 2010.09.18 | 
| C# _ List<T> = new List<T> (0) | 2010.09.07 | 
| C#_ ArrayList _ 모든데이터 출력하기(IEnumerator)[ MoveNext() ] (0) | 2010.09.05 | 
| C#_ ArrayList 클래스[Insert()] (0) | 2010.09.05 |