msgget(2) 맨 페이지 - 윈디하나의 솔라나라

개요

섹션
맨 페이지 이름
검색(S)

msgget(2)

msgget(2)                        System Calls                        msgget(2)



NAME
       msgget - get message queue

SYNOPSIS
       #include <sys/msg.h>

       int msgget(key_t key, int msgflg);

DESCRIPTION
       The  msgget()  argument returns the message queue identifier associated
       with key.


       A message queue identifier and associated message queue and data struc‐
       ture  (see  Intro(2))  are  created for key if one of the following are
       true:

           o      key is IPC_PRIVATE.


           o      key does not already have a message queue identifier associ‐
                  ated with it, and (msgflg&IPC_CREAT) is true.



       On  creation,  the data structure associated with the new message queue
       identifier is initialized as follows:

           o      msg_perm.cuid, msg_perm.uid, msg_perm.cgid, and msg_perm.gid
                  are  set  to  the  effective user ID and effective group ID,
                  respectively, of the calling process.


           o      The low-order 9 bits of msg_perm.mode are set  to  the  low-
                  order 9 bits of msgflg.


           o      msg_qnum, msg_lspid, msg_lrpid, msg_stime, and msg_rtime are
                  set to 0.


           o      msg_ctime is set to the current time.


           o      msg_qbytes is set to the system limit. See NOTES.


RETURN VALUES
       Upon successful completion, a non-negative integer representing a  mes‐
       sage  queue identifier is returned. Otherwise, −1 is returned and errno
       is set to indicate the error.

ERRORS
       The msgget() function will fail if:

       EACCES    A message queue identifier exists for key, but operation per‐
                 mission  (see  Intro(2)) as specified by the low-order 9 bits
                 of msgflg would not be granted.


       EEXIST    A   message   queue   identifier   exists   for    key    but
                 (msgflg&IPC_CREAT) and (msgflg&IPC_EXCL) are both true.


       ENOENT    A  message  queue  identifier  does  not  exist  for  key and
                 (msgflg&IPC_CREAT) is false.


       ENOSPC    A message queue identifier is to be created but  the  system-
                 imposed  limit on the maximum number of allowed message queue
                 identifiers system wide would be exceeded. See NOTES.


ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:


       tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) ATTRIBUTE  TYPEAT‐
       TRIBUTE  VALUE  _  Interface  StabilityCommitted  _  StandardSee  stan‐
       dards(7).


SEE ALSO
       Intro(2),  msgctl(2),  msgrcv(2),  msgsnd(2),   setrctl(2),   ftok(3C),
       attributes(7), standards(7), rctladm(8)

NOTES
       The  system-defined  limit used to initialize msg_qbytes is the minimum
       enforced value of the calling process's process.max-msg-qbytes resource
       control.


       The  system-imposed limit on the number of message queue identifiers is
       maintained  on  a  per-project  basis  using  the   project.max-msg-ids
       resource  control.  The zone.max-msg-ids resource control restricts the
       total amount of message queue identifiers that can be  allocated  by  a
       zone.


       See rctladm(8) and setrctl(2) for information about using resource con‐
       trols.



Oracle Solaris 11.4               14 Aug 2006                        msgget(2)
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3