리눅스에서 메세지큐의 사용에 대해
글쓴이: d00d00 / 작성시간: 수, 2007/04/18 - 6:30오후
리눅스에서 Sysv IPC장치 중 하나인 메세지큐를 사용하려고 합니다.
처음 써보는거라 테스트를 해보려고 아래같은 코드를 작성했습니다.
int main(){
int msq_id = msgget(IPC_PRIVATE, IPC_CREAT);
cout << msq_id << endl;
}
보시다시피 이 코드를 실행하면 생성된 메세지큐의 id를 출력하는데요.
프로그램을 여러번 반복해서 실행하면 처음 몇번은 키가 잘 출력되다가, 언제부턴가 -1을 출력하기 시작합니다.
msgctl로 제거를 안해주긴 했지만, 20~30번도 안 실행했는데요. 커널에 생성될 수 있는 개수가 정해져 있는건가요?
또, 메세지큐에 들어갈 수 있는 메세지의 최대개수는 정확히 몇개인가요?
Forums:
16
디폴트가 16개이고요
/proc/sys/kernel/msgmni
값을 조정하세여.
/***************************************
Being the one is just like being in love.
***************************************/
/***************************************
Being the one is just like being in love.
***************************************/
아 고맙습니다
큐에 메세지는 몇개나 넣을 수 있나요? 메모리가 허용하는 한도?
네트웍 패킷을 인큐하고 디큐하면서 처리하는 용도로 충분할지 -_-
자답;;
같은 디렉토리에 msgmax라는 파일이 있네요. 이게 최대갯수군요.
댓글 달기