Critical Section(임계영역; 임계구역)

CODEDRAGON Development/Java

반응형

 

Critical Section(임계영역; 임계구역)

·       크리티컬 섹션은 한번에 한 스레드만 사용할 수 있는 코드 영역입니다.

·       한 쓰레드가 특정 작업을 마치기 전까지 다른 쓰레드에 의해 작업을 방해받지 않도록 하는 것입니다.

·       멀티 스레드에 의해 공유자원이 서로 참조될 수 있는 코드 범위입니다.

·       병렬컴퓨팅에서 둘 이상의 스레드가 동시에 접근해서는 안 되는 공유자원(자료 구조 또는 장치)을 접근하는 코드부분을 말합니다.

·       공유 데이터(객체)를 사용하는 코드 영역을 임계영역으로 지정해놓고, 공유 데이터가 가지고 있는  lock을 획득한 한 쓰레드만 이 객체의 영역 내의 코드를 수행할 수 있도록 합니다해당 쓰레드가 임계 영역내의 모든 코드를 수행하고 이 영역을 벗어나면서 lock을 반납하게 되면 이 때 다른 쓰레드가 반납된 lock을 획득해서 임계 영역의 코드를 수행할 수 있게 됩니다.