mirror of
https://github.com/php/doc-en.git
synced 2026-03-23 23:32:18 +01:00
sync : fix XML by converting para to simpara tags via script
This commit is contained in:
@@ -1,38 +1,37 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
|
||||
<book xml:id="book.sync" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<book xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="book.sync">
|
||||
<?phpdoc extension-membership="pecl" ?>
|
||||
<title>Sync</title>
|
||||
<titleabbrev>Sync</titleabbrev>
|
||||
|
||||
<preface xml:id="intro.sync">
|
||||
&reftitle.intro;
|
||||
<para>
|
||||
<simpara>
|
||||
The <literal>sync</literal> extension introduces cross-platform synchonization objects into PHP.
|
||||
Named and unnamed Mutex, Semaphore, Event, Reader-Writer, and named Shared Memory
|
||||
objects provide OS-level synchronization on both POSIX (e.g. Linux) and Windows
|
||||
platforms.
|
||||
</para>
|
||||
<para>
|
||||
</simpara>
|
||||
<simpara>
|
||||
Automatic cleanup of acquired synchronization objects takes place during extension
|
||||
teardown. This means that if PHP prematurely terminates a script (e.g. script
|
||||
execution time is exceeded), objects will not be left in an unknown state. The
|
||||
only exception to this is if PHP itself crashes (e.g. an internal buffer overflow).
|
||||
</para>
|
||||
<para>
|
||||
</simpara>
|
||||
<simpara>
|
||||
Unnamed synchronization objects don't have a lot of use outside of a multithreaded
|
||||
scenario. Unnamed objects are more useful in conjunction with the pthreads PECL
|
||||
extension.
|
||||
</para>
|
||||
</simpara>
|
||||
<note>
|
||||
<para>
|
||||
<simpara>
|
||||
Named objects require additional care to be used on all systems.
|
||||
If an object is instantiated with a specific set of parameters, it must always
|
||||
be instantiated with those parameters or the object will probably end up in an
|
||||
inconsistent state until the next reboot or a system administrator cleans up
|
||||
the mess.
|
||||
</para>
|
||||
</simpara>
|
||||
</note>
|
||||
</preface>
|
||||
|
||||
@@ -44,7 +43,6 @@
|
||||
&reference.sync.syncsharedmemory;
|
||||
|
||||
</book>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
|
||||
@@ -1,16 +1,14 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
|
||||
<section xml:id="sync.installation" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<section xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="sync.installation">
|
||||
&reftitle.install;
|
||||
|
||||
<para>
|
||||
<simpara>
|
||||
&pecl.info;
|
||||
<link xlink:href="&url.pecl.package;sync">&url.pecl.package;sync</link>
|
||||
</para>
|
||||
</simpara>
|
||||
|
||||
</section>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
|
||||
@@ -1,26 +1,24 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
|
||||
<chapter xml:id="sync.setup" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<chapter xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="sync.setup">
|
||||
&reftitle.setup;
|
||||
|
||||
<section xml:id="sync.requirements">
|
||||
&reftitle.required;
|
||||
<para>
|
||||
<simpara>
|
||||
A system with support for POSIX shared memory (shm_open()) or running Windows.
|
||||
</para>
|
||||
</simpara>
|
||||
</section>
|
||||
|
||||
<section xml:id="sync.installation">
|
||||
&reftitle.install;
|
||||
<para>
|
||||
<simpara>
|
||||
&pecl.info;
|
||||
<link xlink:href="&url.pecl.package;sync">&url.pecl.package;sync</link>.
|
||||
</para>
|
||||
</simpara>
|
||||
</section>
|
||||
|
||||
</chapter>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
|
||||
<reference xml:id="class.syncevent" role="class" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
<reference xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude" xml:id="class.syncevent" role="class">
|
||||
|
||||
<title>The SyncEvent class</title>
|
||||
<titleabbrev>SyncEvent</titleabbrev>
|
||||
@@ -11,17 +10,17 @@
|
||||
<!-- {{{ SyncEvent intro -->
|
||||
<section xml:id="syncevent.intro">
|
||||
&reftitle.intro;
|
||||
<para>
|
||||
<simpara>
|
||||
A cross-platform, native implementation of named and unnamed event objects.
|
||||
Both automatic and manual event objects are supported.
|
||||
</para>
|
||||
<para>
|
||||
</simpara>
|
||||
<simpara>
|
||||
An event object waits, without polling, for the object to be fired/set.
|
||||
One instance waits on the event object while another instance fires/sets
|
||||
the event. Event objects are useful wherever a long-running process would
|
||||
otherwise poll a resource (e.g. checking to see if uploaded data needs to
|
||||
be processed).
|
||||
</para>
|
||||
</simpara>
|
||||
</section>
|
||||
<!-- }}} -->
|
||||
|
||||
@@ -41,7 +40,7 @@
|
||||
<!-- }}} -->
|
||||
|
||||
<classsynopsisinfo role="comment">&Methods;</classsynopsisinfo>
|
||||
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.syncevent')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[not(@role='procedural')])" />
|
||||
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.syncevent')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[not(@role='procedural')])"/>
|
||||
</classsynopsis>
|
||||
<!-- }}} -->
|
||||
|
||||
@@ -52,7 +51,6 @@
|
||||
&reference.sync.entities.syncevent;
|
||||
|
||||
</reference>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
|
||||
@@ -14,9 +14,9 @@
|
||||
<methodparam choice="opt"><type>bool</type><parameter>manual</parameter><initializer>&false;</initializer></methodparam>
|
||||
<methodparam choice="opt"><type>bool</type><parameter>prefire</parameter><initializer>&false;</initializer></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
<simpara>
|
||||
Constructs a named or unnamed event object.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="parameters">
|
||||
@@ -25,42 +25,42 @@
|
||||
<varlistentry>
|
||||
<term><parameter>name</parameter></term>
|
||||
<listitem>
|
||||
<para>
|
||||
<simpara>
|
||||
The name of the event if this is a named event object.
|
||||
</para>
|
||||
</simpara>
|
||||
<note>
|
||||
<para>
|
||||
<simpara>
|
||||
If the name already exists, it must be able to be opened by the current user
|
||||
that the process is running as or an exception will be thrown with a meaningless
|
||||
error message.
|
||||
</para>
|
||||
</simpara>
|
||||
</note>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><parameter>manual</parameter></term>
|
||||
<listitem>
|
||||
<para>
|
||||
<simpara>
|
||||
Specifies whether or not the event object must be reset manually.
|
||||
</para>
|
||||
</simpara>
|
||||
<note>
|
||||
<para>
|
||||
<simpara>
|
||||
Manual reset event objects allow all waiting processes through until the
|
||||
object is reset.
|
||||
</para>
|
||||
</simpara>
|
||||
</note>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><parameter>prefire</parameter></term>
|
||||
<listitem>
|
||||
<para>
|
||||
<simpara>
|
||||
Specifies whether or not to prefire (signal) the event object.
|
||||
</para>
|
||||
</simpara>
|
||||
<note>
|
||||
<para>
|
||||
<simpara>
|
||||
Only has impact if the calling process/thread is the first to create the object.
|
||||
</para>
|
||||
</simpara>
|
||||
</note>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
@@ -69,16 +69,16 @@
|
||||
|
||||
<refsect1 role="returnvalues">
|
||||
&reftitle.returnvalues;
|
||||
<para>
|
||||
<simpara>
|
||||
The new <classname>SyncEvent</classname> object.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="errors">
|
||||
&reftitle.errors;
|
||||
<para>
|
||||
<simpara>
|
||||
An exception is thrown if the event object cannot be created or opened.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="examples">
|
||||
@@ -115,9 +115,9 @@ $event->wait();
|
||||
<row>
|
||||
<entry>PECL sync 1.1.0</entry>
|
||||
<entry>
|
||||
<para>
|
||||
<simpara>
|
||||
Added <parameter>prefire</parameter>.
|
||||
</para>
|
||||
</simpara>
|
||||
</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
|
||||
<refentry xml:id="syncevent.fire" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="syncevent.fire">
|
||||
<refnamediv>
|
||||
<refname>SyncEvent::fire</refname>
|
||||
<refpurpose>Fires/sets the event</refpurpose>
|
||||
@@ -11,12 +10,12 @@
|
||||
&reftitle.description;
|
||||
<methodsynopsis>
|
||||
<modifier>public</modifier> <type>bool</type><methodname>SyncEvent::fire</methodname>
|
||||
<void />
|
||||
<void/>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
<simpara>
|
||||
Fires/sets a <classname>SyncEvent</classname> object. Lets multiple threads through that are waiting
|
||||
if the event object was created with a manual value of &true;.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="parameters">
|
||||
@@ -26,9 +25,9 @@
|
||||
|
||||
<refsect1 role="returnvalues">
|
||||
&reftitle.returnvalues;
|
||||
<para>
|
||||
<simpara>
|
||||
&return.success;
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="examples">
|
||||
@@ -60,7 +59,6 @@ $event->wait();
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
|
||||
<refentry xml:id="syncevent.reset" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="syncevent.reset">
|
||||
<refnamediv>
|
||||
<refname>SyncEvent::reset</refname>
|
||||
<refpurpose>Resets a manual event</refpurpose>
|
||||
@@ -11,11 +10,11 @@
|
||||
&reftitle.description;
|
||||
<methodsynopsis>
|
||||
<modifier>public</modifier> <type>bool</type><methodname>SyncEvent::reset</methodname>
|
||||
<void />
|
||||
<void/>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
<simpara>
|
||||
Resets a <classname>SyncEvent</classname> object that has been fired/set. Only valid for manual event objects.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="parameters">
|
||||
@@ -25,9 +24,9 @@
|
||||
|
||||
<refsect1 role="returnvalues">
|
||||
&reftitle.returnvalues;
|
||||
<para>
|
||||
<simpara>
|
||||
&return.success;
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="examples">
|
||||
@@ -62,7 +61,6 @@ $event->fire();
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
|
||||
<refentry xml:id="syncevent.wait" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="syncevent.wait">
|
||||
<refnamediv>
|
||||
<refname>SyncEvent::wait</refname>
|
||||
<refpurpose>Waits for the event to be fired/set</refpurpose>
|
||||
@@ -13,9 +12,9 @@
|
||||
<modifier>public</modifier> <type>bool</type><methodname>SyncEvent::wait</methodname>
|
||||
<methodparam choice="opt"><type>int</type><parameter>wait</parameter><initializer>-1</initializer></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
<simpara>
|
||||
Waits for the <classname>SyncEvent</classname> object to be fired.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="parameters">
|
||||
@@ -24,10 +23,10 @@
|
||||
<varlistentry>
|
||||
<term><parameter>wait</parameter></term>
|
||||
<listitem>
|
||||
<para>
|
||||
<simpara>
|
||||
The number of milliseconds to wait for the event to be fired.
|
||||
A value of -1 is infinite.
|
||||
</para>
|
||||
</simpara>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
@@ -35,9 +34,9 @@
|
||||
|
||||
<refsect1 role="returnvalues">
|
||||
&reftitle.returnvalues;
|
||||
<para>
|
||||
<simpara>
|
||||
&return.success;
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="examples">
|
||||
@@ -68,7 +67,6 @@ $event->wait();
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
|
||||
<reference xml:id="class.syncmutex" role="class" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
<reference xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude" xml:id="class.syncmutex" role="class">
|
||||
|
||||
<title>The SyncMutex class</title>
|
||||
<titleabbrev>SyncMutex</titleabbrev>
|
||||
@@ -11,14 +10,14 @@
|
||||
<!-- {{{ SyncMutex intro -->
|
||||
<section xml:id="syncmutex.intro">
|
||||
&reftitle.intro;
|
||||
<para>
|
||||
<simpara>
|
||||
A cross-platform, native implementation of named and unnamed countable mutex objects.
|
||||
</para>
|
||||
<para>
|
||||
</simpara>
|
||||
<simpara>
|
||||
A mutex is a mutual exclusion object that restricts access to a shared resource (e.g. a file) to a single instance.
|
||||
Countable mutexes acquire the mutex a single time and internally track the number of times the mutex is locked.
|
||||
The mutex is unlocked as soon as it goes out of scope or is unlocked the same number of times that it was locked.
|
||||
</para>
|
||||
</simpara>
|
||||
</section>
|
||||
<!-- }}} -->
|
||||
|
||||
@@ -38,7 +37,7 @@
|
||||
<!-- }}} -->
|
||||
|
||||
<classsynopsisinfo role="comment">&Methods;</classsynopsisinfo>
|
||||
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.syncmutex')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[not(@role='procedural')])" />
|
||||
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.syncmutex')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[not(@role='procedural')])"/>
|
||||
</classsynopsis>
|
||||
<!-- }}} -->
|
||||
|
||||
@@ -49,7 +48,6 @@
|
||||
&reference.sync.entities.syncmutex;
|
||||
|
||||
</reference>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
|
||||
<refentry xml:id="syncmutex.construct" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="syncmutex.construct">
|
||||
<refnamediv>
|
||||
<refname>SyncMutex::__construct</refname>
|
||||
<refpurpose>Constructs a new SyncMutex object</refpurpose>
|
||||
@@ -13,9 +12,9 @@
|
||||
<modifier>public</modifier> <methodname>SyncMutex::__construct</methodname>
|
||||
<methodparam choice="opt"><type>string</type><parameter>name</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
<simpara>
|
||||
Constructs a named or unnamed countable mutex.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="parameters">
|
||||
@@ -24,15 +23,15 @@
|
||||
<varlistentry>
|
||||
<term><parameter>name</parameter></term>
|
||||
<listitem>
|
||||
<para>
|
||||
<simpara>
|
||||
The name of the mutex if this is a named mutex object.
|
||||
</para>
|
||||
</simpara>
|
||||
<note>
|
||||
<para>
|
||||
<simpara>
|
||||
If the name already exists, it must be able to be opened by the current user
|
||||
that the process is running as or an exception will be thrown with a meaningless
|
||||
error message.
|
||||
</para>
|
||||
</simpara>
|
||||
</note>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
@@ -41,16 +40,16 @@
|
||||
|
||||
<refsect1 role="returnvalues">
|
||||
&reftitle.returnvalues;
|
||||
<para>
|
||||
<simpara>
|
||||
The new <classname>SyncMutex</classname> object.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="errors">
|
||||
&reftitle.errors;
|
||||
<para>
|
||||
<simpara>
|
||||
An exception is thrown if the mutex cannot be created or opened.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="examples">
|
||||
@@ -103,7 +102,6 @@ $mutex->unlock();
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
|
||||
<refentry xml:id="syncmutex.lock" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="syncmutex.lock">
|
||||
<refnamediv>
|
||||
<refname>SyncMutex::lock</refname>
|
||||
<refpurpose>Waits for an exclusive lock</refpurpose>
|
||||
@@ -13,10 +12,10 @@
|
||||
<modifier>public</modifier> <type>bool</type><methodname>SyncMutex::lock</methodname>
|
||||
<methodparam choice="opt"><type>int</type><parameter>wait</parameter><initializer>-1</initializer></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
<simpara>
|
||||
Obtains an exclusive lock on a <classname>SyncMutex</classname> object.
|
||||
If the lock is already acquired, then this increments an internal counter.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="parameters">
|
||||
@@ -25,10 +24,10 @@
|
||||
<varlistentry>
|
||||
<term><parameter>wait</parameter></term>
|
||||
<listitem>
|
||||
<para>
|
||||
<simpara>
|
||||
The number of milliseconds to wait for the exclusive lock.
|
||||
A value of -1 is infinite.
|
||||
</para>
|
||||
</simpara>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
@@ -36,9 +35,9 @@
|
||||
|
||||
<refsect1 role="returnvalues">
|
||||
&reftitle.returnvalues;
|
||||
<para>
|
||||
<simpara>
|
||||
&return.success;
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="examples">
|
||||
@@ -74,7 +73,6 @@ $mutex->unlock();
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
|
||||
<refentry xml:id="syncmutex.unlock" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="syncmutex.unlock">
|
||||
<refnamediv>
|
||||
<refname>SyncMutex::unlock</refname>
|
||||
<refpurpose>Unlocks the mutex</refpurpose>
|
||||
@@ -13,10 +12,10 @@
|
||||
<modifier>public</modifier> <type>bool</type><methodname>SyncMutex::unlock</methodname>
|
||||
<methodparam choice="opt"><type>bool</type><parameter>all</parameter><initializer>&false;</initializer></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
<simpara>
|
||||
Decreases the internal counter of a <classname>SyncMutex</classname> object.
|
||||
When the internal counter reaches zero, the actual lock on the object is released.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="parameters">
|
||||
@@ -25,9 +24,9 @@
|
||||
<varlistentry>
|
||||
<term><parameter>all</parameter></term>
|
||||
<listitem>
|
||||
<para>
|
||||
<simpara>
|
||||
Specifies whether or not to set the internal counter to zero and therefore release the lock.
|
||||
</para>
|
||||
</simpara>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
@@ -35,9 +34,9 @@
|
||||
|
||||
<refsect1 role="returnvalues">
|
||||
&reftitle.returnvalues;
|
||||
<para>
|
||||
<simpara>
|
||||
&return.success;
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="examples">
|
||||
@@ -68,7 +67,6 @@ $mutex->unlock();
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
|
||||
<reference xml:id="class.syncreaderwriter" role="class" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
<reference xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude" xml:id="class.syncreaderwriter" role="class">
|
||||
|
||||
<title>The SyncReaderWriter class</title>
|
||||
<titleabbrev>SyncReaderWriter</titleabbrev>
|
||||
@@ -11,14 +10,14 @@
|
||||
<!-- {{{ SyncReaderWriter intro -->
|
||||
<section xml:id="syncreaderwriter.intro">
|
||||
&reftitle.intro;
|
||||
<para>
|
||||
<simpara>
|
||||
A cross-platform, native implementation of named and unnamed reader-writer objects.
|
||||
</para>
|
||||
<para>
|
||||
</simpara>
|
||||
<simpara>
|
||||
A reader-writer object allows many readers or one writer to access a resource.
|
||||
This is an efficient solution for managing resources where access will primarily be
|
||||
read-only but exclusive write access is occasionally necessary.
|
||||
</para>
|
||||
</simpara>
|
||||
</section>
|
||||
<!-- }}} -->
|
||||
|
||||
@@ -38,7 +37,7 @@
|
||||
<!-- }}} -->
|
||||
|
||||
<classsynopsisinfo role="comment">&Methods;</classsynopsisinfo>
|
||||
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.syncreaderwriter')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[not(@role='procedural')])" />
|
||||
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.syncreaderwriter')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[not(@role='procedural')])"/>
|
||||
</classsynopsis>
|
||||
<!-- }}} -->
|
||||
|
||||
@@ -49,7 +48,6 @@
|
||||
&reference.sync.entities.syncreaderwriter;
|
||||
|
||||
</reference>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
|
||||
<refentry xml:id="syncreaderwriter.construct" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="syncreaderwriter.construct">
|
||||
<refnamediv>
|
||||
<refname>SyncReaderWriter::__construct</refname>
|
||||
<refpurpose>Constructs a new SyncReaderWriter object</refpurpose>
|
||||
@@ -14,9 +13,9 @@
|
||||
<methodparam choice="opt"><type>string</type><parameter>name</parameter></methodparam>
|
||||
<methodparam choice="opt"><type>int</type><parameter>autounlock</parameter><initializer>1</initializer></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
<simpara>
|
||||
Constructs a named or unnamed reader-writer object.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="parameters">
|
||||
@@ -25,15 +24,15 @@
|
||||
<varlistentry>
|
||||
<term><parameter>name</parameter></term>
|
||||
<listitem>
|
||||
<para>
|
||||
<simpara>
|
||||
The name of the reader-writer if this is a named reader-writer object.
|
||||
</para>
|
||||
</simpara>
|
||||
<note>
|
||||
<para>
|
||||
<simpara>
|
||||
If the name already exists, it must be able to be opened by the current user
|
||||
that the process is running as or an exception will be thrown with a meaningless
|
||||
error message.
|
||||
</para>
|
||||
</simpara>
|
||||
</note>
|
||||
<note>
|
||||
<simpara>
|
||||
@@ -45,17 +44,17 @@
|
||||
<varlistentry>
|
||||
<term><parameter>autounlock</parameter></term>
|
||||
<listitem>
|
||||
<para>
|
||||
<simpara>
|
||||
Specifies whether or not to automatically unlock the reader-writer at the
|
||||
conclusion of the PHP script.
|
||||
</para>
|
||||
</simpara>
|
||||
<warning>
|
||||
<para>
|
||||
<simpara>
|
||||
If an object is: A named reader-writer with an autounlock of FALSE, the
|
||||
object is locked for either reading or writing, and the PHP script concludes
|
||||
before the object is unlocked, then the underlying objects will end up in an
|
||||
inconsistent state.
|
||||
</para>
|
||||
</simpara>
|
||||
</warning>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
@@ -64,16 +63,16 @@
|
||||
|
||||
<refsect1 role="returnvalues">
|
||||
&reftitle.returnvalues;
|
||||
<para>
|
||||
<simpara>
|
||||
The new <classname>SyncReaderWriter</classname> object.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="errors">
|
||||
&reftitle.errors;
|
||||
<para>
|
||||
<simpara>
|
||||
An exception is thrown if the reader-writer cannot be created or opened.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="examples">
|
||||
@@ -108,7 +107,6 @@ $readwrite->writeunlock();
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
|
||||
<refentry xml:id="syncreaderwriter.readlock" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="syncreaderwriter.readlock">
|
||||
<refnamediv>
|
||||
<refname>SyncReaderWriter::readlock</refname>
|
||||
<refpurpose>Waits for a read lock</refpurpose>
|
||||
@@ -13,9 +12,9 @@
|
||||
<modifier>public</modifier> <type>bool</type><methodname>SyncReaderWriter::readlock</methodname>
|
||||
<methodparam choice="opt"><type>int</type><parameter>wait</parameter><initializer>-1</initializer></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
<simpara>
|
||||
Obtains a read lock on a <classname>SyncReaderWriter</classname> object.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="parameters">
|
||||
@@ -24,10 +23,10 @@
|
||||
<varlistentry>
|
||||
<term><parameter>wait</parameter></term>
|
||||
<listitem>
|
||||
<para>
|
||||
<simpara>
|
||||
The number of milliseconds to wait for a lock.
|
||||
A value of -1 is infinite.
|
||||
</para>
|
||||
</simpara>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
@@ -35,9 +34,9 @@
|
||||
|
||||
<refsect1 role="returnvalues">
|
||||
&reftitle.returnvalues;
|
||||
<para>
|
||||
<simpara>
|
||||
&return.success;
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="examples">
|
||||
@@ -65,7 +64,6 @@ $readwrite->readunlock();
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
|
||||
<refentry xml:id="syncreaderwriter.readunlock" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="syncreaderwriter.readunlock">
|
||||
<refnamediv>
|
||||
<refname>SyncReaderWriter::readunlock</refname>
|
||||
<refpurpose>Releases a read lock</refpurpose>
|
||||
@@ -11,11 +10,11 @@
|
||||
&reftitle.description;
|
||||
<methodsynopsis>
|
||||
<modifier>public</modifier> <type>bool</type><methodname>SyncReaderWriter::readunlock</methodname>
|
||||
<void />
|
||||
<void/>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
<simpara>
|
||||
Releases a read lock on a <classname>SyncReaderWriter</classname> object.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="parameters">
|
||||
@@ -25,9 +24,9 @@
|
||||
|
||||
<refsect1 role="returnvalues">
|
||||
&reftitle.returnvalues;
|
||||
<para>
|
||||
<simpara>
|
||||
&return.success;
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="examples">
|
||||
@@ -55,7 +54,6 @@ $readwrite->readunlock();
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
|
||||
<refentry xml:id="syncreaderwriter.writelock" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="syncreaderwriter.writelock">
|
||||
<refnamediv>
|
||||
<refname>SyncReaderWriter::writelock</refname>
|
||||
<refpurpose>Waits for an exclusive write lock</refpurpose>
|
||||
@@ -13,9 +12,9 @@
|
||||
<modifier>public</modifier> <type>bool</type><methodname>SyncReaderWriter::writelock</methodname>
|
||||
<methodparam choice="opt"><type>int</type><parameter>wait</parameter><initializer>-1</initializer></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
<simpara>
|
||||
Obtains an exclusive write lock on a <classname>SyncReaderWriter</classname> object.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="parameters">
|
||||
@@ -24,10 +23,10 @@
|
||||
<varlistentry>
|
||||
<term><parameter>wait</parameter></term>
|
||||
<listitem>
|
||||
<para>
|
||||
<simpara>
|
||||
The number of milliseconds to wait for a lock.
|
||||
A value of -1 is infinite.
|
||||
</para>
|
||||
</simpara>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
@@ -35,9 +34,9 @@
|
||||
|
||||
<refsect1 role="returnvalues">
|
||||
&reftitle.returnvalues;
|
||||
<para>
|
||||
<simpara>
|
||||
&return.success;
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="examples">
|
||||
@@ -65,7 +64,6 @@ $readwrite->writeunlock();
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
|
||||
<refentry xml:id="syncreaderwriter.writeunlock" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="syncreaderwriter.writeunlock">
|
||||
<refnamediv>
|
||||
<refname>SyncReaderWriter::writeunlock</refname>
|
||||
<refpurpose>Releases a write lock</refpurpose>
|
||||
@@ -11,11 +10,11 @@
|
||||
&reftitle.description;
|
||||
<methodsynopsis>
|
||||
<modifier>public</modifier> <type>bool</type><methodname>SyncReaderWriter::writeunlock</methodname>
|
||||
<void />
|
||||
<void/>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
<simpara>
|
||||
Releases a write lock on a <classname>SyncReaderWriter</classname> object.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="parameters">
|
||||
@@ -25,9 +24,9 @@
|
||||
|
||||
<refsect1 role="returnvalues">
|
||||
&reftitle.returnvalues;
|
||||
<para>
|
||||
<simpara>
|
||||
&return.success;
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="examples">
|
||||
@@ -55,7 +54,6 @@ $readwrite->writeunlock();
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
|
||||
<reference xml:id="class.syncsemaphore" role="class" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
<reference xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude" xml:id="class.syncsemaphore" role="class">
|
||||
|
||||
<title>The SyncSemaphore class</title>
|
||||
<titleabbrev>SyncSemaphore</titleabbrev>
|
||||
@@ -11,14 +10,14 @@
|
||||
<!-- {{{ SyncSemaphore intro -->
|
||||
<section xml:id="syncsemaphore.intro">
|
||||
&reftitle.intro;
|
||||
<para>
|
||||
<simpara>
|
||||
A cross-platform, native implementation of named and unnamed semaphore objects.
|
||||
</para>
|
||||
<para>
|
||||
</simpara>
|
||||
<simpara>
|
||||
A semaphore restricts access to a limited resource to a limited number of instances.
|
||||
Semaphores differ from mutexes in that they can allow more than one instance to
|
||||
access a resource at one time while a mutex only allows one instance at a time.
|
||||
</para>
|
||||
</simpara>
|
||||
</section>
|
||||
<!-- }}} -->
|
||||
|
||||
@@ -38,7 +37,7 @@
|
||||
<!-- }}} -->
|
||||
|
||||
<classsynopsisinfo role="comment">&Methods;</classsynopsisinfo>
|
||||
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.syncsemaphore')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[not(@role='procedural')])" />
|
||||
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.syncsemaphore')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[not(@role='procedural')])"/>
|
||||
</classsynopsis>
|
||||
<!-- }}} -->
|
||||
|
||||
@@ -49,7 +48,6 @@
|
||||
&reference.sync.entities.syncsemaphore;
|
||||
|
||||
</reference>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
|
||||
<refentry xml:id="syncsemaphore.construct" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="syncsemaphore.construct">
|
||||
<refnamediv>
|
||||
<refname>SyncSemaphore::__construct</refname>
|
||||
<refpurpose>Constructs a new SyncSemaphore object</refpurpose>
|
||||
@@ -15,9 +14,9 @@
|
||||
<methodparam choice="opt"><type>int</type><parameter>initialval</parameter><initializer>1</initializer></methodparam>
|
||||
<methodparam choice="opt"><type>bool</type><parameter>autounlock</parameter><initializer>&true;</initializer></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
<simpara>
|
||||
Constructs a named or unnamed semaphore.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="parameters">
|
||||
@@ -26,39 +25,39 @@
|
||||
<varlistentry>
|
||||
<term><parameter>name</parameter></term>
|
||||
<listitem>
|
||||
<para>
|
||||
<simpara>
|
||||
The name of the semaphore if this is a named semaphore object.
|
||||
</para>
|
||||
</simpara>
|
||||
<note>
|
||||
<para>
|
||||
<simpara>
|
||||
If the name already exists, it must be able to be opened by the current user
|
||||
that the process is running as or an exception will be thrown with a meaningless
|
||||
error message.
|
||||
</para>
|
||||
</simpara>
|
||||
</note>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><parameter>initialval</parameter></term>
|
||||
<listitem>
|
||||
<para>
|
||||
<simpara>
|
||||
The initial value of the semaphore. This is the number of locks that may be obtained.
|
||||
</para>
|
||||
</simpara>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><parameter>autounlock</parameter></term>
|
||||
<listitem>
|
||||
<para>
|
||||
<simpara>
|
||||
Specifies whether or not to automatically unlock the semaphore at the
|
||||
conclusion of the PHP script.
|
||||
</para>
|
||||
</simpara>
|
||||
<warning>
|
||||
<para>
|
||||
<simpara>
|
||||
If an object is: A named semaphore with an autounlock of &false;, the object is
|
||||
locked, and the PHP script concludes before the object is unlocked, then the
|
||||
underlying semaphore will end up in an inconsistent state.
|
||||
</para>
|
||||
</simpara>
|
||||
</warning>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
@@ -67,16 +66,16 @@
|
||||
|
||||
<refsect1 role="returnvalues">
|
||||
&reftitle.returnvalues;
|
||||
<para>
|
||||
<simpara>
|
||||
The new <classname>SyncSemaphore</classname> object.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="errors">
|
||||
&reftitle.errors;
|
||||
<para>
|
||||
<simpara>
|
||||
An exception is thrown if the semaphore cannot be created or opened.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="examples">
|
||||
@@ -113,7 +112,6 @@ $semaphore->unlock();
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
|
||||
<refentry xml:id="syncsemaphore.lock" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="syncsemaphore.lock">
|
||||
<refnamediv>
|
||||
<refname>SyncSemaphore::lock</refname>
|
||||
<refpurpose>Decreases the count of the semaphore or waits</refpurpose>
|
||||
@@ -13,9 +12,9 @@
|
||||
<modifier>public</modifier> <type>bool</type><methodname>SyncSemaphore::lock</methodname>
|
||||
<methodparam choice="opt"><type>int</type><parameter>wait</parameter><initializer>-1</initializer></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
<simpara>
|
||||
Decreases the count of a <classname>SyncSemaphore</classname> object or waits until the semaphore becomes non-zero.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="parameters">
|
||||
@@ -24,10 +23,10 @@
|
||||
<varlistentry>
|
||||
<term><parameter>wait</parameter></term>
|
||||
<listitem>
|
||||
<para>
|
||||
<simpara>
|
||||
The number of milliseconds to wait for the semaphore.
|
||||
A value of -1 is infinite.
|
||||
</para>
|
||||
</simpara>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
@@ -35,9 +34,9 @@
|
||||
|
||||
<refsect1 role="returnvalues">
|
||||
&reftitle.returnvalues;
|
||||
<para>
|
||||
<simpara>
|
||||
&return.success;
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="examples">
|
||||
@@ -73,7 +72,6 @@ $semaphore->unlock();
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
|
||||
<refentry xml:id="syncsemaphore.unlock" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="syncsemaphore.unlock">
|
||||
<refnamediv>
|
||||
<refname>SyncSemaphore::unlock</refname>
|
||||
<refpurpose>Increases the count of the semaphore</refpurpose>
|
||||
@@ -13,9 +12,9 @@
|
||||
<modifier>public</modifier> <type>bool</type><methodname>SyncSemaphore::unlock</methodname>
|
||||
<methodparam choice="opt"><type>int</type><parameter role="reference">prevcount</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
<simpara>
|
||||
Increases the count of a <classname>SyncSemaphore</classname> object.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="parameters">
|
||||
@@ -24,9 +23,9 @@
|
||||
<varlistentry>
|
||||
<term><parameter>prevcount</parameter></term>
|
||||
<listitem>
|
||||
<para>
|
||||
<simpara>
|
||||
Returns the previous count of the semaphore.
|
||||
</para>
|
||||
</simpara>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
@@ -34,9 +33,9 @@
|
||||
|
||||
<refsect1 role="returnvalues">
|
||||
&reftitle.returnvalues;
|
||||
<para>
|
||||
<simpara>
|
||||
&return.success;
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="examples">
|
||||
@@ -72,7 +71,6 @@ $semaphore->unlock();
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
|
||||
<reference xml:id="class.syncsharedmemory" role="class" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
<reference xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude" xml:id="class.syncsharedmemory" role="class">
|
||||
|
||||
<title>The SyncSharedMemory class</title>
|
||||
<titleabbrev>SyncSharedMemory</titleabbrev>
|
||||
@@ -11,19 +10,19 @@
|
||||
<!-- {{{ SyncSharedMemory intro -->
|
||||
<section xml:id="syncsharedmemory.intro">
|
||||
&reftitle.intro;
|
||||
<para>
|
||||
<simpara>
|
||||
A cross-platform, native, consistent implementation of named shared memory
|
||||
objects.
|
||||
</para>
|
||||
<para>
|
||||
</simpara>
|
||||
<simpara>
|
||||
Shared memory lets two separate processes communicate without the need for
|
||||
complex pipes or sockets. There are several integer-based shared memory
|
||||
implementations for PHP. Named shared memory is an alternative.
|
||||
</para>
|
||||
<para>
|
||||
</simpara>
|
||||
<simpara>
|
||||
Synchronization objects (e.g. SyncMutex) are still required to protect most
|
||||
uses of shared memory.
|
||||
</para>
|
||||
</simpara>
|
||||
</section>
|
||||
<!-- }}} -->
|
||||
|
||||
@@ -43,7 +42,7 @@
|
||||
<!-- }}} -->
|
||||
|
||||
<classsynopsisinfo role="comment">&Methods;</classsynopsisinfo>
|
||||
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.syncsharedmemory')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[not(@role='procedural')])" />
|
||||
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.syncsharedmemory')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[not(@role='procedural')])"/>
|
||||
</classsynopsis>
|
||||
<!-- }}} -->
|
||||
|
||||
@@ -54,7 +53,6 @@
|
||||
&reference.sync.entities.syncsharedmemory;
|
||||
|
||||
</reference>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
|
||||
<refentry xml:id="syncsharedmemory.construct" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="syncsharedmemory.construct">
|
||||
<refnamediv>
|
||||
<refname>SyncSharedMemory::__construct</refname>
|
||||
<refpurpose>Constructs a new SyncSharedMemory object</refpurpose>
|
||||
@@ -14,9 +13,9 @@
|
||||
<methodparam><type>string</type><parameter>name</parameter></methodparam>
|
||||
<methodparam><type>int</type><parameter>size</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
<simpara>
|
||||
Constructs a named shared memory object.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="parameters">
|
||||
@@ -25,28 +24,28 @@
|
||||
<varlistentry>
|
||||
<term><parameter>name</parameter></term>
|
||||
<listitem>
|
||||
<para>
|
||||
<simpara>
|
||||
The name of the shared memory object.
|
||||
</para>
|
||||
</simpara>
|
||||
<note>
|
||||
<para>
|
||||
<simpara>
|
||||
If the name already exists, it must be able to be opened by the current user
|
||||
that the process is running as or an exception will be thrown with a meaningless
|
||||
error message.
|
||||
</para>
|
||||
</simpara>
|
||||
</note>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><parameter>size</parameter></term>
|
||||
<listitem>
|
||||
<para>
|
||||
<simpara>
|
||||
The size, in bytes, of shared memory to reserve.
|
||||
</para>
|
||||
</simpara>
|
||||
<note>
|
||||
<para>
|
||||
<simpara>
|
||||
The amount of memory cannot be resized later. Request sufficient storage up front.
|
||||
</para>
|
||||
</simpara>
|
||||
</note>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
@@ -55,16 +54,16 @@
|
||||
|
||||
<refsect1 role="returnvalues">
|
||||
&reftitle.returnvalues;
|
||||
<para>
|
||||
<simpara>
|
||||
The new <classname>SyncSharedMemory</classname> object.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="errors">
|
||||
&reftitle.errors;
|
||||
<para>
|
||||
<simpara>
|
||||
An exception is thrown if the shared memory object cannot be created or opened.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="examples">
|
||||
@@ -100,7 +99,6 @@ $result = $mem->write(json_encode(array("name" => "my_report.txt")));
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
|
||||
<refentry xml:id="syncsharedmemory.first" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="syncsharedmemory.first">
|
||||
<refnamediv>
|
||||
<refname>SyncSharedMemory::first</refname>
|
||||
<refpurpose>Check to see if the object is the first instance system-wide of named shared memory</refpurpose>
|
||||
@@ -11,11 +10,11 @@
|
||||
&reftitle.description;
|
||||
<methodsynopsis>
|
||||
<modifier>public</modifier> <type>bool</type><methodname>SyncSharedMemory::first</methodname>
|
||||
<void />
|
||||
<void/>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
<simpara>
|
||||
Retrieves the system-wide first instance status of a <classname>SyncSharedMemory</classname> object.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="parameters">
|
||||
@@ -25,9 +24,9 @@
|
||||
|
||||
<refsect1 role="returnvalues">
|
||||
&reftitle.returnvalues;
|
||||
<para>
|
||||
<simpara>
|
||||
&return.success;
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="examples">
|
||||
@@ -70,7 +69,6 @@ bool(false)
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
|
||||
<refentry xml:id="syncsharedmemory.read" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="syncsharedmemory.read">
|
||||
<refnamediv>
|
||||
<refname>SyncSharedMemory::read</refname>
|
||||
<refpurpose>Copy data from named shared memory</refpurpose>
|
||||
@@ -14,9 +13,9 @@
|
||||
<methodparam choice="opt"><type>int</type><parameter>start</parameter><initializer>0</initializer></methodparam>
|
||||
<methodparam choice="opt"><type>int</type><parameter>length</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
<simpara>
|
||||
Copies data from named shared memory.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="parameters">
|
||||
@@ -25,31 +24,31 @@
|
||||
<varlistentry>
|
||||
<term><parameter>start</parameter></term>
|
||||
<listitem>
|
||||
<para>
|
||||
<simpara>
|
||||
The start/offset, in bytes, to begin reading.
|
||||
</para>
|
||||
</simpara>
|
||||
<note>
|
||||
<para>
|
||||
<simpara>
|
||||
If the value is negative, the starting position will begin at the specified
|
||||
number of bytes from the end of the shared memory segment.
|
||||
</para>
|
||||
</simpara>
|
||||
</note>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><parameter>length</parameter></term>
|
||||
<listitem>
|
||||
<para>
|
||||
<simpara>
|
||||
The number of bytes to read.
|
||||
</para>
|
||||
</simpara>
|
||||
<note>
|
||||
<para>
|
||||
<simpara>
|
||||
If unspecified, reading will stop at the end of the shared memory segment.
|
||||
</para>
|
||||
<para>
|
||||
</simpara>
|
||||
<simpara>
|
||||
If the value is negative, reading will stop the specified number of bytes
|
||||
from the end of the shared memory segment.
|
||||
</para>
|
||||
</simpara>
|
||||
</note>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
@@ -58,9 +57,9 @@
|
||||
|
||||
<refsect1 role="returnvalues">
|
||||
&reftitle.returnvalues;
|
||||
<para>
|
||||
<simpara>
|
||||
A string containing the data read from shared memory.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="examples">
|
||||
@@ -105,7 +104,6 @@ string(3) "ort"
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
|
||||
<refentry xml:id="syncsharedmemory.size" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="syncsharedmemory.size">
|
||||
<refnamediv>
|
||||
<refname>SyncSharedMemory::size</refname>
|
||||
<refpurpose>Returns the size of the named shared memory</refpurpose>
|
||||
@@ -11,11 +10,11 @@
|
||||
&reftitle.description;
|
||||
<methodsynopsis>
|
||||
<modifier>public</modifier> <type>int</type><methodname>SyncSharedMemory::size</methodname>
|
||||
<void />
|
||||
<void/>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
<simpara>
|
||||
Retrieves the shared memory size of a <classname>SyncSharedMemory</classname> object.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="parameters">
|
||||
@@ -25,9 +24,9 @@
|
||||
|
||||
<refsect1 role="returnvalues">
|
||||
&reftitle.returnvalues;
|
||||
<para>
|
||||
<simpara>
|
||||
An integer containing the size of the shared memory. This will be the same size that was passed to the constructor.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="examples">
|
||||
@@ -61,7 +60,6 @@ int(1024)
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- $Revision$ -->
|
||||
|
||||
<refentry xml:id="syncsharedmemory.write" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="syncsharedmemory.write">
|
||||
<refnamediv>
|
||||
<refname>SyncSharedMemory::write</refname>
|
||||
<refpurpose>Copy data to named shared memory</refpurpose>
|
||||
@@ -14,9 +13,9 @@
|
||||
<methodparam choice="opt"><type>string</type><parameter>string</parameter></methodparam>
|
||||
<methodparam choice="opt"><type>int</type><parameter>start</parameter><initializer>0</initializer></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
<simpara>
|
||||
Copies data to named shared memory.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="parameters">
|
||||
@@ -25,28 +24,28 @@
|
||||
<varlistentry>
|
||||
<term><parameter>string</parameter></term>
|
||||
<listitem>
|
||||
<para>
|
||||
<simpara>
|
||||
The data to write to shared memory.
|
||||
</para>
|
||||
</simpara>
|
||||
<note>
|
||||
<para>
|
||||
<simpara>
|
||||
If the size of the data exceeds the size of the shared memory, the number of
|
||||
bytes written returned will be less than the length of the input.
|
||||
</para>
|
||||
</simpara>
|
||||
</note>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><parameter>start</parameter></term>
|
||||
<listitem>
|
||||
<para>
|
||||
<simpara>
|
||||
The start/offset, in bytes, to begin writing.
|
||||
</para>
|
||||
</simpara>
|
||||
<note>
|
||||
<para>
|
||||
<simpara>
|
||||
If the value is negative, the starting position will begin at the specified
|
||||
number of bytes from the end of the shared memory segment.
|
||||
</para>
|
||||
</simpara>
|
||||
</note>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
@@ -55,9 +54,9 @@
|
||||
|
||||
<refsect1 role="returnvalues">
|
||||
&reftitle.returnvalues;
|
||||
<para>
|
||||
<simpara>
|
||||
An integer containing the number of bytes written to shared memory.
|
||||
</para>
|
||||
</simpara>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="examples">
|
||||
@@ -104,7 +103,6 @@ int(3)
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
|
||||
Reference in New Issue
Block a user