2002-04-29 13:11:05 +00:00
|
|
|
<?xml version="1.0" encoding="iso-8859-1"?>
|
2004-11-10 08:30:50 +00:00
|
|
|
<!-- $Revision: 1.5 $ -->
|
2002-04-29 13:11:05 +00:00
|
|
|
<refentry id="function.msg-send">
|
|
|
|
<refnamediv>
|
|
|
|
<refname>msg_send</refname>
|
|
|
|
<refpurpose>
|
|
|
|
Send a message to a message queue
|
|
|
|
</refpurpose>
|
|
|
|
</refnamediv>
|
|
|
|
<refsect1>
|
|
|
|
<title>Description</title>
|
|
|
|
<methodsynopsis>
|
|
|
|
<type>bool</type><methodname>msg_send</methodname>
|
2004-04-25 10:08:54 +00:00
|
|
|
<methodparam><type>resource</type><parameter>queue</parameter></methodparam>
|
2002-04-29 13:11:05 +00:00
|
|
|
<methodparam><type>int</type><parameter>msgtype</parameter></methodparam>
|
|
|
|
<methodparam><type>mixed</type><parameter>message</parameter></methodparam>
|
|
|
|
<methodparam choice="opt"><type>bool</type><parameter>serialize</parameter></methodparam>
|
|
|
|
<methodparam choice="opt"><type>bool</type><parameter>blocking</parameter></methodparam>
|
2004-11-10 08:30:50 +00:00
|
|
|
<methodparam choice="opt"><type>int</type><parameter role="reference">errorcode</parameter></methodparam>
|
2002-04-29 13:11:05 +00:00
|
|
|
</methodsynopsis>
|
|
|
|
<para>
|
|
|
|
<function>msg_send</function> sends a <parameter>message</parameter> of type
|
|
|
|
<parameter>msgtype</parameter> (which MUST be greater than 0) to a
|
|
|
|
the message queue specified by <parameter>queue</parameter>.
|
|
|
|
</para>
|
|
|
|
<para>
|
|
|
|
If the message is too large to fit in the queue, your script will wait
|
|
|
|
until another process reads messages from the queue and frees enough
|
|
|
|
space for your message to be sent.
|
|
|
|
This is called blocking; you can prevent blocking by setting the
|
|
|
|
optional <parameter>blocking</parameter> parameter to &false;, in which
|
|
|
|
case <function>msg_send</function> will immediately return &false; if the
|
|
|
|
message is too big for the queue, and set the optional
|
|
|
|
<parameter>errorcode</parameter> to EAGAIN, indicating that you should
|
|
|
|
try to send your message again a little later on.
|
|
|
|
</para>
|
|
|
|
<para>
|
|
|
|
The optional <parameter>serialize</parameter> controls how the
|
|
|
|
<parameter>message</parameter> is sent. <parameter>serialize</parameter>
|
|
|
|
defaults to &true; which means that the <parameter>message</parameter> is
|
|
|
|
serialized using the same mechanism as the session module before being
|
|
|
|
sent to the queue. This allows complex arrays and objects to be sent to
|
|
|
|
other PHP scripts, or if you are using the WDDX serializer, to any WDDX
|
|
|
|
compatible client.
|
|
|
|
</para>
|
|
|
|
<para>
|
|
|
|
Upon successful completion the message queue data structure is updated as
|
|
|
|
follows: <parameter>msg_lspid</parameter> is set to the process-ID of the
|
|
|
|
calling process, <parameter>msg_qnum</parameter> is incremented by 1 and
|
|
|
|
<parameter>msg_stime</parameter> is set to the current time.
|
|
|
|
</para>
|
|
|
|
<para>
|
2004-04-25 10:08:54 +00:00
|
|
|
See also <function>msg_remove_queue</function>,
|
2002-04-29 13:11:05 +00:00
|
|
|
<function>msg_receive</function>,
|
|
|
|
<function>msg_stat_queue</function> and
|
|
|
|
<function>msg_set_queue</function>.
|
|
|
|
</para>
|
|
|
|
</refsect1>
|
|
|
|
</refentry>
|
|
|
|
<!-- Keep this comment at the end of the file
|
|
|
|
Local variables:
|
|
|
|
mode: sgml
|
|
|
|
sgml-omittag:t
|
|
|
|
sgml-shorttag:t
|
|
|
|
sgml-minimize-attributes:nil
|
|
|
|
sgml-always-quote-attributes:t
|
|
|
|
sgml-indent-step:1
|
|
|
|
sgml-indent-data:t
|
|
|
|
indent-tabs-mode:nil
|
|
|
|
sgml-parent-document:nil
|
|
|
|
sgml-default-dtd-file:"../../../../manual.ced"
|
|
|
|
sgml-exposed-tags:nil
|
|
|
|
sgml-local-catalogs:nil
|
|
|
|
sgml-local-ecat-files:nil
|
|
|
|
End:
|
|
|
|
vim600: syn=xml fen fdm=syntax fdl=2 si
|
|
|
|
vim: et tw=78 syn=sgml
|
|
|
|
vi: ts=1 sw=1
|
|
|
|
-->
|