2017-12-11 29 views
0

동일한 키를 사용하여 동일한 semId을 얻고 싶습니다. 동일한 키를 사용하여 semget 메서드를 호출했지만 다른 semId을 반환했습니다.세마포어 semget 메서드 반환 값 확인

이 문제가 발생한 이유를 대답하십시오.

샘플 소스 :

int id1, id2; 
int semflg = IPC_CREAT | 0666; 
id1 = semget(0, 1, semflg); 
id2 = semget(0, 1, semflg); 

결과 :! ID1 = ID2

+0

'semget'은 C 언어의 일부가 아니기 때문에이 질문에 태그를 추가해야한다고 생각합니다. – goodvibration

+0

@shlim'id1'과'id2'의 값은 무엇입니까? 아무도 값 '-1'을 가지고 있지 않음을 확인 했습니까? – cse

+0

id1, id2 값은 IPC 세마포어에 등록 된 값입니다. 예 : id1 = 786432, id2 = 819201 – shlim

답변

0

키 ID 0IPC_PRIVATE이며, 항상 세마포어의 새로운 세트를 생성합니다. 유효한 키를 선택하십시오.

+0

감사합니다. 나는 IPC_PRIVATE가 0이라고 생각하지 않았다. T. – shlim