|
함수원형 int msgget(key_t ket, int msgflg)
헤더파일.
#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/mgs.h>
msgget 함수는 key 인자 값에 연관된 메세지 큐 식별자를 반환한다.
key의 인자로 특수한 경우로 IPC_PRIVATE를 인자로 넘겨 줄 수 있는데, 이 같은 경우는 프로세스의 개인적은 큐를 생성하고 프로세스만 이용 할 수 있도록 하는 경우이다.
msgflg의 인자는 9개의 권한을 셋팅하는 것인데 IPC_CREAT와 해당 권한을 OR 연산으로 넘겨 줄 수 있다. IPC_CREAT를 인자로 넘겨 줄 경우 이미 메세지큐가 생성되어 있다면 무시한다. IPC_EXCL는 이미 생성된 큐가 있을 시 -1을 리턴하고 ,errno 변수에 값을 세팅한다.
IPC_CREAT와 IPC_EXCL과 권한은 전부 OR연산으로 인자에 입력 할 수가 있다.
리턴 값
성공시 메세지 큐의 식별자 값이 반환되고, 그외 경우 -1을 반환하며 errno에 해당 에러 값이 셋팅된다.
간단한 사용 예를 살펴보자.
생성된 큐는 명령어
$ipcs -q 시 생성된 메세지 큐 list를 볼 수 있다.
자세한 사항은
$man msgget 시 살펴 볼 수 있다.
'IT > C 언어' 카테고리의 다른 글
#if, #else, #endif에서 주의해야할점! (5) | 2013.10.30 |
---|---|
IPC, 공유메모리 생성 함수 shmget() (0) | 2013.06.02 |
C언어 - 파일 정보 struct stat, 구조체 (2) | 2013.05.05 |
C언어 - 파일 정보 읽기 함수 stat() ,lstat() ,fstat(); (0) | 2013.05.05 |
C언어 - 디렉토리 읽기 함수 readdir(); (0) | 2013.04.28 |