Sponsored Content
Full Discussion: msgrcv pending forever !!!
Top Forums Programming msgrcv pending forever !!! Post 94656 by blowtorch on Tuesday 3rd of January 2006 12:31:06 AM
Old 01-03-2006
I believe that the OP is looking to return from the msgrcv call if there is no message on the queue. Check the man page of msgrcv here.

Quote:
The msgflg argument asserts none, one or more (or-ing them) of the following flags:
IPC_NOWAIT For immediate return if no message of the requested type is on the queue. The system call fails with errno set to ENOMSG.
So when calling msgrcv, set the msgflg variable to IPC_NOWAIT.
 

8 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

msgrcv : Invalid argument

Hi All, Please guide me how to get rid : msgrcv : Invalid argument. I am using message queues: msgsnd and msgrcv, I am able to send through msgsnd and receive through msgrcv, but at times i get the belo error. msgrcv : Invalid argument. (1 Reply)
Discussion started by: answers
1 Replies

2. AIX

msgrcv crash in AIX 5.3 SP6

Hi All, I have a piece of code like blow. It is working fine with AIX 5.3 SP3. When the same thing is getting executed in AIX 5. SP6 it is giving segmentation fault. If I put debug statements before and after, it works fine. rc = msgrcv(mqid, &msg, size, HIGH_PRIORITY_FIRST , 0) ... (0 Replies)
Discussion started by: sandhya_chp
0 Replies

3. IP Networking

valid_lft forever preferred_lft forever <-- what does this mean?

Just looking at my ethernet interface.. I see this response... what does this mean...? ipconfig... lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo inet6 ::1/128 scope host valid_lft... (0 Replies)
Discussion started by: jimmyc
0 Replies

4. Programming

C Posix - msgsnd() msgrcv

Hey guys, Im doing message passing for the first time on a linux OS. Im new to C programming, so bear with me. I made two .c files : central.c and external.c I simply wanted to pass a message from the central process to the external process. BUT Whenever each process gets to the... (3 Replies)
Discussion started by: carl33p
3 Replies

5. UNIX for Dummies Questions & Answers

IPC Message Queue. msgrcv doesnt work..

Hi everybody, this is the situation. there is a programm XYZ which opens a message queue with the key 47110815 and waits for a SIGUSR1. After receiving this signal it sends a message with type 100 and a number (as ASCII) in the message-body. I have to write a prog which frist sends the... (1 Reply)
Discussion started by: daredevil82m
1 Replies

6. UNIX for Dummies Questions & Answers

pending signals

I was wondering about following. If I have set of 3 signals. And they are all blocked.Now at some point in the program the set is unblocked. Which signal will be delivered first.This is my set....SIGTSTP,SIGQUIT,SIGINT.When I added them in the set and unblock them I did it in following order... ... (1 Reply)
Discussion started by: joker40
1 Replies

7. Programming

How can I tell when recv is finished with pending data?

I'm working with recv and I am having a heck of a lot of trouble ignoring excess data that I did not ask for. I was hoping someone could shine some light on the subject for me because I'm not getting anywhere fast. ---------- Post updated at 02:46 AM ---------- Previous update was at 12:31 AM... (2 Replies)
Discussion started by: Errigour
2 Replies

8. UNIX for Dummies Questions & Answers

Forever -w option

I am trying to use the forever command. I can get it to work if I do not use the w option to watch for changes and cause an automatic restart on a change to the contents of the directory being watched. I would really like to use the watch option. Is this option fully implemented? here is an... (4 Replies)
Discussion started by: barrygordon
4 Replies
msg.h(3HEAD)							      Headers							      msg.h(3HEAD)

NAME
msg.h, msg - message queue structures SYNOPSIS
#include <sys/msg.h> DESCRIPTION
The <sys/msg.h> header defines the following data types through typedef: msgqnum_t used for the number of messages in the message queue msglen_t used for the number of bytes allowed in the message queue These types are unsigned integer types that are able to store values at least as large as a type unsigned short. The <sys/msg.h> header defines the following constant as a message operation flag: MSG_NOERROR no error if big message The msqid_ds structure contains the following members: struct ipc_perm msg_perm Operation permission structure. msgqnum_t msg_qnum Number of messages currently on queue. msglen_t msg_qbytes Maximum number of bytes allowed on queue. pid_t msg_lspid Process ID of last msgsnd(2). pid_t msg_lrpid Process ID of last msgrcv(2). time_t msg_stime Time of last msgsnd(). time_t msg_rtime Time of last msgrcv(). time_t msg_ctime Time of last change. The pid_t, time_t, key_t, size_t, and ssize_t types are defined as described in <sys/types.h>. See types(3HEAD). ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Interface Stability |Standard | +-----------------------------+-----------------------------+ SEE ALSO
msgctl(2), msgget(2), msgrcv(2), msgsnd(2), ipc.h(3HEAD), types.h(3HEAD), attributes(5), standards(5) SunOS 5.10 10 Sep 2004 msg.h(3HEAD)
All times are GMT -4. The time now is 04:31 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy