cynic           Mon Feb  5 04:46:49 2001 EDT

  Added files:                 
    /phpdoc/cs/functions        shmop.xml 
  Log:
  should be completely translated
  
  

Index: phpdoc/cs/functions/shmop.xml
+++ phpdoc/cs/functions/shmop.xml
<reference id="ref.shmop">
  <title>Funkce pro pr�ci se sd�lenou pam�t�</title>
  <titleabbrev>shmop</titleabbrev>

  <partintro>
   <para>
    Shmop snadno pou�iteln� sada funkc�, kter� PHP umo��uje ��st, zapisovat,
    vytv��et a mazat segmenty UNIXov� sd�len� pam�ti. Tyto funkce na Windows
    nefunguj�, proto�e tento syst�m nepodporuje sd�lenou pam�. Pokud chcete
    shmop pou��vat, budete muset PHP zkompilovat s <option
    role="configure">--enable-shmop</option>.
   </para>
   <note>
    <simpara>
     N�zvy funkc� popisovan�ch v t�to kapitole za��naj� v PHP 4.0.3 na
     <function>shm_</function>, ale od PHP 4.0.4 se jejich n�zvy zm�nily na
     <function>shmop_</function>.
    </simpara>
   </note>
   <para>
    <example>
     <title>P�ehled operac� se sd�lenou pam�t�</title>
     <programlisting role="php">
&lt;?php

// Vytvo�it 100 bytov� blok sd�len� pam�ti se system id 0xff3
$shm_id = shmop_open(0xff3, "c", 0644, 100);
if(!$shm_id) {
        echo "Nepoda�ilo se vytvo�it segment sd�len� pam�ti\n";
}

// Zjistit velikost bloku sd�len� pam�ti
$shm_size = shmop_size($shm_id);
echo "SHM blok o velikosti : ".$shm_size. " byl vytvo�en.\n";

// Zap��eme do sd�len� pam�ti zku�ebn� �et�zec
$shm_bytes_written = shmop_write($shm_id, "my shared memory block", 0);
if($shm_bytes_written != strlen("m�j blok sd�len� pam�ti")) {
        echo "Nepoda�ilo se zapsat kompletn� data\n";
}

// Na�teme �et�zec zp�tky
$my_string = shmop_read($shm_id, 0, $shm_size);
if(!$my_string) {
        echo "Nepoda�ilo se ��st z bloku sd�len� pam�ti\n";
}
echo "Data ve sd�len� pam�ti byla: ".$my_string."\n";

//Sma�eme tento blok a zav�eme segment sd�len� pam�ti
if(!shmop_delete($shm_id)) {
        echo "Nepoda�ilo se smazat blok sd�len� pam�ti.";
}
shmop_close($shm_id);

?&gt;
     </programlisting>
    </example>
   </para>
  </partintro>

  <refentry id="function.shmop_open">
   <refnamediv>
    <refname>shmop_open</refname>
    <refpurpose>Vytvo�it nebo otev��t blok sd�len� pam�ti</refpurpose>
   </refnamediv>
   <refsect1>
    <title>Popis</title>
    <funcsynopsis>
     <funcprototype>
      <funcdef>int <function>shmop_open</function></funcdef>
      <paramdef>int <parameter>key</parameter></paramdef>
      <paramdef>string <parameter>flags</parameter></paramdef>
      <paramdef>int <parameter>mode</parameter></paramdef>
      <paramdef>int <parameter>size</parameter></paramdef>
     </funcprototype>
    </funcsynopsis>
    <para>
     <function>shmop_open</function> vytvo�� nebo otev�e blok sd�len� pam�ti.
    </para>
    <para>
     <function>shmop_open</function> p�ij�m� 4 argumenty: kl��, co� je system id
     bloku sd�len� pam�ti; tento argument m��e b�t p�ed�n jako des�tkov� nebo
     hexadecim�ln� ��slo. Druh� argument jsou parametry:
     <itemizedlist>
      <listitem>
       <simpara>
        "a" pro p��stup (nastavuje IPC_EXCL)
        tento parametr pou�ijte, pokud chcete otev��t existuj�c� segment sd�len�
        pam�ti
       </simpara>
      </listitem>
      <listitem>
       <simpara>
        "c" pro vytvo�en� (nastavuje IPC_CREATE)
        tento parametr pou�ijte, pokud chcete vytvo�it nov� segment sd�len� pam�ti
       </simpara>
      </listitem>
     </itemizedlist>
     T�et� argument je m�d, co� jsou p��stupov� pr�va, kter� chcete tomuto
     segmentu p�i�adit; jsou stejn� jako pr�va pro soubory. P��stupov� pr�va
     mus� b�t p�ed�na jako oktalov� ��slo, nap�. 0644. Posledn� argument je
     velikost bloku sd�len� pam�ti, kter� chcete vytvo�it, v bytech.
     <note><simpara>
      Pozn.: Pokud otv�r�te existuj�c� segment pam�ti, 3. 4. argument by m�ly b�t
      p�ed�ny jako 0. P�i �sp�chu <function>shmop_open</function> vrac� id,
      kter� m��ete pou��t k p��stupu na tento segment sd�len� pam�ti.
     </simpara></note>
    </para>
    <para>
     <example>
      <title>Vytvo�en� bloku sd�len� pam�ti</title>
      <programlisting role="php">
&lt;?php
$shm_id = shmop_open(0x0fff, "c", 0644, 100);
?&gt;
      </programlisting>
     </example>
    </para>
    <para>
     Tato uk�zka otev�ela blok sd�len� pam�ti se system id 0x0fff.
    </para>
   </refsect1>
  </refentry>

  <refentry id="function.shmop_read">
   <refnamediv>
    <refname>shmop_read</refname>
    <refpurpose>P�e��st data z bloku sd�len� pam�ti</refpurpose>
   </refnamediv>
   <refsect1>
    <title>Popis</title>
    <funcsynopsis>
     <funcprototype>
      <funcdef>string <function>shmop_read</function></funcdef>
      <paramdef>int <parameter>shmid</parameter></paramdef>
      <paramdef>int <parameter>start</parameter></paramdef>
      <paramdef>int <parameter>count</parameter></paramdef>
     </funcprototype>
    </funcsynopsis>
    <para>
     <function>shmop_read</function> �te �et�zec z bloku sd�len� pam�ti.
    </para>
    <para>
     <function>shmop_read</function> p�ij�m� 3 argumenty:
     <parameter>shmid</parameter>, co� je id bloku sd�len� pam�ti vytvo�en�ho
     funkc� <function>shmop_open</function>, <parameter>start</parameter>, co�
     je offset na kter�m m� �ten� za��t, a <parameter>count</parameter>, co� je
     po�et byt�, kter� se maj� p�e��st.
    </para>
    <para>
     <example>
      <title>�ten� bloku sd�len� pam�ti</title>
      <programlisting role="php">
&lt;?php
$shm_data = shmop_read($shm_id, 0, 50);
?&gt;
      </programlisting>
     </example>
    </para>
    <para>
     Tato uk�zka p�e�te z bloku sd�len� pam�ti 50 byt� a um�st� na�ten� data
     do <literal>$shm_data</literal>.
    </para>
   </refsect1>
  </refentry>

  <refentry id="function.shmop_write">
   <refnamediv>
    <refname>shmop_write</refname>
     <refpurpose>Zapsat data do bloku sd�len� pam�ti</refpurpose>
    </refnamediv>
    <refsect1>
     <title>Popis</title>
     <funcsynopsis>
      <funcprototype>
       <funcdef>int <function>shmop_write</function></funcdef>
       <paramdef>int <parameter>shmid</parameter></paramdef>
       <paramdef>string <parameter>data</parameter></paramdef>
       <paramdef>int <parameter>offset</parameter></paramdef>
      </funcprototype>
     </funcsynopsis>
     <para>
      <function>shmop_write</function> zap��e �et�zec do bloku sd�len� pam�ti.
     </para>
     <para>
      <function>shmop_write</function> p�ij�m� 3 argumenty:
     <parameter>shmid</parameter>, co� je id bloku sd�len� pam�ti vytvo�en�ho
     funkc� <function>shmop_open</function>, <parameter>data</parameter>, co� je
     �et�zec, kter� se zap��e do bloku sd�len� pam�ti, a
     <parameter>offset</parameter>, co� je offset na kter�m m� z�pis za��t.
     </para>
     <para>
      <example>
      <title>Z�pis do bloku sd�len� pam�ti</title>
      <programlisting role="php">
&lt;?php
$shm_bytes_written = shmop_write($shm_id, $my_string, 0);
?&gt;
      </programlisting>
     </example>
    </para>
    <para>
     Tato uk�zka zap��e data obsa�en� v <literal>$my_string</literal> do bloku
     sd�len� pam�ti, a <literal>$shm_bytes_written</literal> obsahuje po�et
     zapsan�ch byt�.
    </para>
   </refsect1>
  </refentry>

  <refentry id="function.size">
  <refnamediv>
   <refname>shmop_size</refname>
   <refpurpose>Zjistit velikost bloku sd�len� pam�ti</refpurpose>
  </refnamediv>
  <refsect1>
   <title>Popis</title>
   <funcsynopsis>
    <funcprototype>
     <funcdef>int <function>shmop_size</function></funcdef>
     <paramdef>int <parameter>shmid</parameter></paramdef>
    </funcprototype>
    </funcsynopsis>
    <para>
     <function>shmop_size</function> se pou��v� ke zji�t�n� velikosti bloku
     sd�len� pam�ti v bytech.
    </para>
    <para>
     <function>shmop_size</function> p�ij�m� <parameter>shmid</parameter>, co� je
     idenfifik�tor vytvo�en� funkc� <function>shmop_open</function>.
     <function>shmop_size</function> vrac� integer p�edstavuj�c� po�et byt�,
     kter� blok sd�len� pam�ti zab�r�.
    </para>
    <para>
     <example>
      <title>Zji�t�n� velikosti bloku sd�len� pam�ti</title>
      <programlisting role="php">
&lt;?php
$shm_size = shmop_size($shm_id);
?&gt;
      </programlisting>
     </example>
    </para>
    <para>
     Tato uk�zka zap��e velikost bloku sd�len� pam�ti ur�en�ho identifik�torem
     <literal>$shm_id</literal> do <literal>$shm_size</literal>.
    </para>
   </refsect1>
  </refentry>

  <refentry id="function.shmop_delete">
   <refnamediv>
    <refname>shmop_delete</refname>
    <refpurpose>Smazat blok sd�len� pam�ti</refpurpose>
   </refnamediv>
   <refsect1>
    <title>Popis</title>
    <funcsynopsis>
     <funcprototype>
      <funcdef>int <function>shmop_delete</function></funcdef>
      <paramdef>int <parameter>shmid</parameter></paramdef>
     </funcprototype>
    </funcsynopsis>
    <para>
     <function>shmop_delete</function> se pou��v� ke smaz�n� bloku sd�len� pam�ti.
    </para>
    <para>
     <function>shmop_delete</function> p�ij�m� <parameter>shmid</parameter>,
     co� je identifik�tor bloku sd�len� pam�ti vytvo�en� funkc�
     <function>shmop_open</function>. P�i �sp�chu vrac� 1, jinak 0.
    </para>
    <para>
     <example>
      <title>Smaz�n� bloku sd�len� pam�ti</title>
      <programlisting role="php">
&lt;?php
shmop_delete($shm_id);
?&gt;
      </programlisting>
     </example>
    </para>
    <para>
     Tato uk�zka sma�e blok sd�len� pam�ti pojmenovan� <literal>$shm_id</literal>.
    </para>
   </refsect1>
  </refentry>

  <refentry id="function.shmop_close">
   <refnamediv>
    <refname>shmop_close</refname>
    <refpurpose>Zav��t blok sd�len� pam�ti</refpurpose>
   </refnamediv>
   <refsect1>
    <title>Popis</title>
    <funcsynopsis>
     <funcprototype>
      <funcdef>int <function>shmop_close</function></funcdef>
      <paramdef>int <parameter>shmid</parameter></paramdef>
     </funcprototype>
    </funcsynopsis>
    <para>
     <function>shmop_close</function> se pou��v� k zav�en� bloku sd�len� pam�ti.
    </para>
    <para>
     <function>shmop_close</function> p�ij�m� <parameter>shmid</parameter>,
     co� je identifik�tor bloku sd�len� pam�ti vytvo�en� funkc�
     <function>shmop_open</function>.
    </para>
    <para>
     <example>
      <title>Zav�en� bloku sd�len� pam�ti</title>
      <programlisting role="php">
&lt;?php
shmop_close($shm_id);
?&gt;
      </programlisting>
     </example>
    </para>
    <para>
     Tato uk�zka zav�e blok sd�len� pam�ti pojmenovan� <literal>$shm_id</literal>.
    </para>
   </refsect1>
  </refentry>
 </reference>

<!-- 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
sgml-parent-document:nil
sgml-default-dtd-file:"../../manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
-->

Reply via email to