3
function A(int a[])
{
SemLock()
//Some Code....
SemUnlock()
}
다른 스레드가 동일한 잠금을 사용했다고 가정합니다. 따라서이 기능은 차단됩니다. 이 함수가 다른 많은 스레드에 의해 호출된다고 가정하십시오. 모두 차단됩니다. 잠금 해제 후 데이터 (매개 변수 a [])가 손실되거나 다른 스레드에 의해 매개 변수로 전달됩니다. 이 데이터 대기열은 어떻게 발생합니까?세마포 잠금 큐잉 메커니즘?
[LINK] (http://www.mpi-sws.org/~druschel/courses/os/lectures/proc4.pdf)는 스레드에 대한 세마포어 작동 방식을 이해하는 데 도움이됩니다. –