Beefy Boxes and Bandwidth Generously Provided by pair Networks
Clear questions and runnable code
get the best and fastest answer
 
PerlMonks  

Re: Key for message queue creation...

by targetsmart (Curate)
on Jun 23, 2009 at 06:51 UTC ( #773889=note: print w/ replies, xml ) Need Help??


in reply to Key for message queue creation...

first of all give some more clarity to us about your question

having said that I assumed the below things
I think you are talking about ftok
from this I understood it.

"Are you the Key Master?" What about this key nonsense? How do we create one? Well, since the ty +pe key_t is actually just a long, you can use any number you want. Bu +t what if you hard-code the number and some other unrelated program h +ardcodes the same number but wants another queue? The solution is to +use the ftok() function which generates a key from two arguments: key_t ftok(const char *path, int id); Ok, this is getting weird. Basically, path just has to be a file that +this process can read. The other argument, id is usually just set to +some arbitrary char, like 'A'. The ftok() function uses information a +bout the named file (like inode number, etc.) and the id to generate +a probably-unique key for msgget(). Programs that want to use the sam +e queue must generate the same key, so they must pass the same parame +ters to ftok(). Finally, it's time to make the call: #include <sys/msg.h> key = ftok("/home/beej/somefile", 'b'); msqid = msgget(key, 0666 | IPC_CREAT); In the above example, I set the permissions on the queue to 666 (or rw +-rw-rw-, if that makes more sense to you). And now we have msqid whic +h will be used to send and receive messages from the queue.
at the same time IPC::SysV has the function ftok, which you can try and use.


Vivek
-- 'I' am not the body, 'I' am the 'soul', which has no beginning or no end, no attachment or no aversion, nothing to attain or lose.


Comment on Re: Key for message queue creation...
Download Code
Re^2: Key for message queue creation...
by leslie (Pilgrim) on Jun 23, 2009 at 07:02 UTC
    Thank you for your replay. It is very much helpful for me.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://773889]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others examining the Monastery: (7)
As of 2014-10-26 05:18 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    For retirement, I am banking on:










    Results (151 votes), past polls