|
뮤텍스를 생성한 후 lock을 걸었습니다...
전 뮤텍스를 걸면 다른스레드의 접근이 완전히 차단 되는거라 믿었는데
예외의 경우가 있다네요
그래서 그 경우를 인터넷을 열심히 뒤져 봤지만 그런얘기는 하나도 없더라구요
콘솔환경에서 제작했구요 간단한겁니다
그냥 테스트로 main()함수 하나 만들고 스레드 2개 생성한 뒤에 전역으로 배열하나 만들어서
두 개의 스레드에서 하나는 배열에 데이터를 넣고 다른 하나는 배열에 있는 데이터를 빼서 처리하는 역활을
하는 형식입니다...
뮤텍스 lock을 걸어도 다른 스레의 침입이 가능한 경우가 어떤경우인가요?
변수를 전역으로 쓴다든가 뭐 그런경우도 해당이 되나요??
스레드 내부는
while(1) {
for () {
뮤텍스.lock()
//배열에 데이터입력
뮤텍스.unlock();
}
}
이런형태로 작성하였습니다....
|