mirror of
https://github.com/php/doc-es.git
synced 2026-03-24 07:22:16 +01:00
172 lines
5.8 KiB
XML
172 lines
5.8 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- $Revision$ -->
|
|
<!-- EN-Revision: fd2f14b2e44fbda6dd3f94a1d07f2bc9a7567aff Maintainer: PhilDaiguille Status: ready -->
|
|
<!-- Reviewed: no -->
|
|
<refentry xmlns="http://docbook.org/ns/docbook" xml:id="function.msg-send">
|
|
<refnamediv>
|
|
<refname>msg_send</refname>
|
|
<refpurpose>Envía un mensaje a una cola</refpurpose>
|
|
</refnamediv>
|
|
|
|
<refsect1 role="description">
|
|
&reftitle.description;
|
|
<methodsynopsis>
|
|
<type>bool</type><methodname>msg_send</methodname>
|
|
<methodparam><type>SysvMessageQueue</type><parameter>queue</parameter></methodparam>
|
|
<methodparam><type>int</type><parameter>message_type</parameter></methodparam>
|
|
<methodparam><type class="union"><type>string</type><type>int</type><type>float</type><type>bool</type></type><parameter>message</parameter></methodparam>
|
|
<methodparam choice="opt"><type>bool</type><parameter>serialize</parameter><initializer>&true;</initializer></methodparam>
|
|
<methodparam choice="opt"><type>bool</type><parameter>blocking</parameter><initializer>&true;</initializer></methodparam>
|
|
<methodparam choice="opt"><type>int</type><parameter role="reference">error_code</parameter><initializer>&null;</initializer></methodparam>
|
|
</methodsynopsis>
|
|
<simpara>
|
|
<function>msg_send</function> envía el mensaje <parameter>message</parameter>
|
|
de tipo <parameter>message_type</parameter> (que DEBE ser mayor que 0)
|
|
a la cola de mensajes identificada por <parameter>queue</parameter>.
|
|
</simpara>
|
|
</refsect1>
|
|
|
|
<refsect1 role="parameters">
|
|
&reftitle.parameters;
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><parameter>queue</parameter></term>
|
|
<listitem>
|
|
<simpara>
|
|
La cola de mensajes
|
|
</simpara>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><parameter>message_type</parameter></term>
|
|
<listitem>
|
|
<simpara>
|
|
El tipo del mensaje (DEBE ser mayor que 0)
|
|
</simpara>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><parameter>message</parameter></term>
|
|
<listitem>
|
|
<simpara>
|
|
El cuerpo del mensaje
|
|
</simpara>
|
|
<note>
|
|
<simpara>
|
|
Si <parameter>serialize</parameter> está definido como &false;, DEBE ser del tipo: &string;, &integer;, &float; o &boolean;.
|
|
En otros casos se emitirá un aviso.
|
|
</simpara>
|
|
</note>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><parameter>serialize</parameter></term>
|
|
<listitem>
|
|
<simpara>
|
|
El parámetro opcional <parameter>serialize</parameter> controla el
|
|
método de envío del mensaje <parameter>message</parameter>. <parameter>serialize</parameter>
|
|
tiene por omisión el valor &true; lo que significa que el mensaje <parameter>message</parameter>
|
|
será serializado utilizando el mismo mecanismo que el utilizado
|
|
por las sesiones, antes de ser enviado a la cola de mensajes. Esto permite
|
|
enviar arrays y objetos complejos a otros scripts PHP, o bien, si se utiliza
|
|
la extensión WDDX, intercambiar mensajes con clientes compatibles WDDX.
|
|
</simpara>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><parameter>blocking</parameter></term>
|
|
<listitem>
|
|
<simpara>
|
|
Si el mensaje es demasiado grande para ser almacenado por la cola, su
|
|
script esperará hasta que otro proceso lea de la
|
|
cola un mensaje, y libere suficiente espacio para su mensaje. Este es
|
|
el modo bloqueante: puede evitar este modo utilizando el
|
|
parámetro <parameter>blocking</parameter> con el valor &false;:
|
|
en este caso, <function>msg_send</function> retornará inmediatamente
|
|
&false; si el mensaje es demasiado grande para la cola. Asignará entonces
|
|
al parámetro <parameter>error_code</parameter> el valor de
|
|
<constant>MSG_EAGAIN</constant>,
|
|
indicando que debería intentar enviar su mensaje de nuevo, un poco más tarde.
|
|
</simpara>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><parameter>error_code</parameter></term>
|
|
<listitem>
|
|
<simpara>
|
|
Si la función falla, el código de error opcional será definido con el valor de
|
|
la variable del sistema errno.
|
|
</simpara>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</refsect1>
|
|
|
|
<refsect1 role="returnvalues">
|
|
&reftitle.returnvalues;
|
|
<simpara>
|
|
&return.success;
|
|
</simpara>
|
|
<simpara>
|
|
Al enviar con éxito un mensaje, la cola se actualiza
|
|
de la siguiente manera: <literal>msg_lrpid</literal> toma el valor del identificador
|
|
de proceso del proceso llamante, <literal>msg_qnum</literal> se incrementa en
|
|
1 y <literal>msg_rtime</literal> toma la fecha y hora actual.
|
|
</simpara>
|
|
</refsect1>
|
|
|
|
<refsect1 role="changelog">
|
|
&reftitle.changelog;
|
|
<informaltable>
|
|
<tgroup cols="2">
|
|
<thead>
|
|
<row>
|
|
<entry>&Version;</entry>
|
|
<entry>&Description;</entry>
|
|
</row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry>8.0.0</entry>
|
|
<entry>
|
|
<parameter>queue</parameter> ahora espera una <classname>SysvMessageQueue</classname>;
|
|
anteriormente, se esperaba un <type>resource</type>.
|
|
</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</informaltable>
|
|
</refsect1>
|
|
|
|
<refsect1 role="seealso">
|
|
&reftitle.seealso;
|
|
<simplelist>
|
|
<member><function>msg_remove_queue</function></member>
|
|
<member><function>msg_receive</function></member>
|
|
<member><function>msg_stat_queue</function></member>
|
|
<member><function>msg_set_queue</function></member>
|
|
</simplelist>
|
|
</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:"~/.phpdoc/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
|
|
-->
|