Sponsored Content
Full Discussion: C Posix - msgsnd() msgrcv
Top Forums Programming C Posix - msgsnd() msgrcv Post 302285166 by Corona688 on Saturday 7th of February 2009 01:52:37 PM
Old 02-07-2009
Also, I don't think your receiver program needs the IPC_CREAT flag. It may be making a brand-new queue overtop your old one.
 

10 More Discussions You Might Find Interesting

1. Programming

msgrcv pending forever !!!

When I am using msgrcv to get a message from a queue, in case of msgsnd some error, the msgrcv thread will waiting forever. Is there some way that I can specify a time out value for this queue ? just let msgrcv wait for some time, if no message comes during this time slot, msgrcv just return... (3 Replies)
Discussion started by: Yun Gang Chen
3 Replies

2. 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

3. 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

4. Programming

Posix

HI, When i am configuring php in SUN Solaris. I am getting the below error. configure: error: Your system seems to lack POSIX threads. Do i need to install POSIX? If so can somebody let me know where can i download POSIX for Solaris 8? Thanks, (2 Replies)
Discussion started by: Krrishv
2 Replies

5. UNIX for Advanced & Expert Users

Posix threads

Hi, consider the code below: #include <stdio.h> . . struct myStruct { char *message ; int id; }; . . . void *thread_function( void *ptr ); nt main() { pthread_t thread1, thread2 ,thread3 ; struct myStruct nico1; (2 Replies)
Discussion started by: Behnaz
2 Replies

6. What is on Your Mind?

Linux posix

Hi everybody, i couldn't think of any better place to ask this question. Does LINUX totally confirm with ALL of the POSIX standards??. If not which areas does it diverge?? my apologies if this questions seems sooo stupid to some of you.. thanks (0 Replies)
Discussion started by: abhiram7
0 Replies

7. 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

8. UNIX for Advanced & Expert Users

System V or POSIX

Hi , I am using UNIX network programming Vol1 (by R Stevens) book to learn about IPC. I would be using HP-UX,Solaris and Linux at my work. I have sections for POSIX and for System V in that book. I am quite confused in indentifying those OSs as POSIX or SYstem V. Can anyone please... (1 Reply)
Discussion started by: kumaran_5555
1 Replies

9. Programming

POSIX Thread Help

I want to create a program that creates 2 child process, and each of them creates 2 threads, and each thread prints its thread id. I0ve allread done that the outuput isn't the outuput i want. When a run the following comand "$./a.out | sort -u | wc -l" I have the folowing output 2 $: It should... (3 Replies)
Discussion started by: pharaoh
3 Replies

10. Programming

Message queue is not blocked in msgsnd

Hi, I am trying to send/receive data by message queue and expecting it to be blocked on send/read for other side (at least this is my understooding ) , I am connecting message between perl<->C , perl is working as expected , but in C msgsnd and msgrcv are not waiting (blocked) untill second side... (6 Replies)
Discussion started by: alexse
6 Replies
MSGGET(2)						      BSD System Calls Manual							 MSGGET(2)

NAME
msgget -- get message queue identifier LIBRARY
Standard C Library (libc, -lc) SYNOPSIS
#include <sys/msg.h> int msgget(key_t key, int msgflg); DESCRIPTION
The msgget() system call returns the message queue identifier associated with key. A message queue identifier is a unique integer greater than zero. A message queue is created if either key is equal to IPC_PRIVATE, or key does not have a message queue identifier associated with it and the IPC_CREAT bit is set in msgflg. If both the IPC_CREAT bit and the IPC_EXCL bit are set in msgflg, and key has a message queue identifier associated with it already, the operation will fail. If a new message queue is created, the data structure associated with it (the msqid_ds structure, see msgctl(2)) is initialized as follows: o msg_perm.cuid and msg_perm.uid are set to the effective uid of the calling process. o msg_perm.gid and msg_perm.cgid are set to the effective gid of the calling process. o msg_perm.mode is set to the lower 9 bits of msgflg. o msg_qnum, msg_lspid, msg_lrpid, msg_rtime, and msg_stime are set to 0. o msg_qbytes is set to the system wide maximum value for the number of bytes in a queue (MSGMNB). o msg_ctime is set to the current time. RETURN VALUES
Upon successful completion a positive message queue identifier is returned. Otherwise, -1 is returned and the global variable errno is set to indicate the error. ERRORS
[EACCES] A message queue is already associated with key and the caller has no permission to access it. [EEXIST] Both IPC_CREAT and IPC_EXCL are set in msgflg, and a message queue is already associated with key. [ENOSPC] A new message queue could not be created because the system limit for the number of message queues has been reached. [ENOENT] IPC_CREAT is not set in msgflg and no message queue associated with key was found. SEE ALSO
msgctl(2), msgrcv(2), msgsnd(2), ftok(3) STANDARDS
The msgget system call conforms to X/Open System Interfaces and Headers Issue 5 (``XSH5''). HISTORY
Message queues appeared in the first release of AT&T System V UNIX. BSD
May 13, 2004 BSD
All times are GMT -4. The time now is 08:03 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy