ÃÑ ÆäÀÌÁö ¼ö : 3224
![]()
|
Facebook Joinc ±×·ì
Joinc QA »çÀÌÆ®
![]()
Tweet
joinc´Â Firefox¿Í chrome¿¡¼ Å×½ºÆ® Çß½À´Ï´Ù. IE¿¡¼´Â Å×À̺íÀÌ ±úÁö°Å³ª À̹ÌÁö°¡ º¸ÀÌÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù. ƯÈ÷ ±¸±Û DocsÀ̹ÌÁöÀÇ °æ¿ì ¿¢¹Úó¸®µÉ ¼ö ÀÖ½À´Ï´Ù. mq_receive»ç¿ë ¹ýssize_t mq_receive(mqd_t mqdes, char *msg_ptr,
size_t msg_len, unsigned *msg_prio);
#define _XOPEN_SOURCE 600
#include <time.h>
#include <mqueue.h>
ssize_t mq_timedreceive(mqd_t mqdes, char *msg_ptr,
size_t msg_len, unsigned *msg_prio,
const struct timespec *abs_timeout);
-lrt¸¦ ¸µÅ©ÇØ¾ß ÇÑ´Ù.
¼³¸í
mq_receiveÇÔ¼ö´Â mqdes°¡ °¡¸®Å°´Â ¸Þ½ÃÁö Å¥·Î ºÎÅÍ °¡Àå ³ôÀº ¿ì¼±¼øÀ§¸¦ °¡Áö´Â ¸Þ½ÃÁö¸¦ °¡Á®¿À°í ¸Þ½ÃÁöÀÇ ¿ì¼±¼øÀ§¸¦ msg_prio¿¡ º¹»çÇÑ´Ù. ¸¸¾à msg_prio°¡ NULLÀÌ¸é ¹«½ÃÇÑ´Ù. msg_ptrÀº ÀÌ ¸Þ½ÃÁö¸¦ °¡¸®Å²´Ù. msg_lenÀº msg_ptrÀÌ °¡¸®Å°´Â ¿µ¿ª¿¡¼ Àоî¿Ã µ¥ÀÌÅÍÀÇ Å©±â·Î mg_msgsizeº¸´Ù Ä¿¾ß ÇÑ´Ù.
¸¸¾à Å¥°¡ ºñ¾îÀÖ´Ù¸é mq_receive´Â ÀÐÀ» ¸Þ½ÃÁö°¡ ÀÖÀ» ¶§±îÁö, ȤÀº ½Ã±×³Î¿¡ ÀÇÇØ ÀÎÅÍ·´Æ®°¡ °É¸± ¶§±îÁö ºÀ¼âµÈ´Ù. ¸¸¾à ¸Þ½ÃÁö Å¥ Áö½ÃÀÚ°¡ O_NONBLOCK Ç÷¡±× »óŶó¸é, Áï½Ã ½ÇÆÐÇϰí EAGAINÀ» ¹ÝȯÇÑ´Ù.
mq_timedreceiveÇÔ¼ö´Â Å¥°¡ ºñ¾îÀÖ°í O_NONBLOCK»óŰ¡ ¾Æ´Ñ °æ¿ì, Áï ºÀ¼â ¸ðµåÀÏ °æ¿ì timeout ½Ã°£¸¸Å ±â´Ù¸°ÈÄ ¹ÝȯÇÑ´Ù´Â Á¡À» Á¦¿ÜÇϰí mq_timedreceiveÇÔ¼ö¿Í µ¿ÀÏÇÏ´Ù. ±â´Ù¸®´Â ½Ã°£Àº 1970³â 1¿ù 1ÀÏ 00:00:00ºÎÅ͸¦ ±âÁØÀ¸·Î °è»êÇÑ´Ù. ½Ã°£Àº timespec ±¸Á¶Ã¼·Î ÁöÁ¤ÇÑ´Ù. struct timespec
{
time_t tv_sec; /* ÃÊ */
long tv_nsec; /* ³ª³ë ÃÊ */
}
¹Ýȯ °ª
¼º°øÇϸé, mq_receive ¿Í mq_timedreceive ÇÔ¼ö´Â ÀÐÀº ¸Þ½ÃÁöÀÇ ¹ÙÀÌÆ® Å©±â¸¦ ¹ÝȯÇÑ´Ù. ¿¡·¯°¡ ¹ß»ýÇϸé -1À» ¹ÝȯÇÑ´Ù. |
|
|
EmailÀ» ±âÀÔÇϸé, ´ñ±ÛÀÌ ¸ÞÀÏ·Î Àü´ÞµË´Ï´Ù. |
|