Threaded
class Threaded implements Collectable, Traversable, Countable, ArrayAccess (View source)
Threaded objects form the basis of pthreads ability to execute user code
in parallel; they expose synchronization methods and various useful
interfaces.
Threaded objects, most importantly, provide implicit safety for the programmer;
all operations on the object scope are safe.
Properties
protected Worker | $worker | Worker object in which this Threaded is being executed |
Methods
(PECL pthreads >= 3.0.0)
Increments the internal number of references to a Threaded object
(PECL pthreads >= 2.0.0)
Fetches a chunk of the objects property table of the given size,
optionally preserving keys
(PECL pthreads >= 2.0.0)
Returns the number of properties for this object
(PECL pthreads >= 3.0.0)
Decrements the internal number of references to a Threaded object
(PECL pthreads >= 2.0.8)
Makes thread safe standard class at runtime
(PECL pthreads >= 3.0.0)
Retrieves the internal number of references to a Threaded object
(PECL pthreads >= 2.0.0)
Tell if the referenced object is executing
(PECL pthreads >= 3.1.0)
(PECL pthreads >= 2.0.0)
Tell if the referenced object was terminated during execution; suffered
fatal errors, or threw uncaught exceptions
(PECL pthreads >= 2.0.0)
Merges data into the current object
(PECL pthreads >= 2.0.0)
Send notification to the referenced object
(PECL pthreads >= 3.0.0)
Send notification to the referenced object. This unblocks at least one
of the blocked threads (as opposed to unblocking all of them, as seen with
Threaded::notify()).
(PECL pthreads >= 2.0.0)
Pops an item from the objects property table
(PECL pthreads >= 2.0.0)
The programmer should always implement the run method for objects
that are intended for execution.
(PECL pthreads >= 2.0.0)
Shifts an item from the objects property table
(PECL pthreads >= 2.0.0)
Executes the block while retaining the referenced objects
synchronization lock for the calling context
(PECL pthreads >= 2.0.0)
Will cause the calling context to wait for notification from the
referenced object
No description
No description
No description
No description
Details
void
addRef()
(PECL pthreads >= 3.0.0)
Increments the internal number of references to a Threaded object
array
chunk(int $size, bool $preserve = false)
(PECL pthreads >= 2.0.0)
Fetches a chunk of the objects property table of the given size,
optionally preserving keys
int
count()
(PECL pthreads >= 2.0.0)
Returns the number of properties for this object
void
delRef()
(PECL pthreads >= 3.0.0)
Decrements the internal number of references to a Threaded object
static bool
extend(string $class)
(PECL pthreads >= 2.0.8)
Makes thread safe standard class at runtime
int
getRefCount()
(PECL pthreads >= 3.0.0)
Retrieves the internal number of references to a Threaded object
bool
isRunning()
(PECL pthreads >= 2.0.0)
Tell if the referenced object is executing
bool
isGarbage()
(PECL pthreads >= 3.1.0)
bool
isTerminated()
(PECL pthreads >= 2.0.0)
Tell if the referenced object was terminated during execution; suffered
fatal errors, or threw uncaught exceptions
bool
merge($from, $overwrite = true)
(PECL pthreads >= 2.0.0)
Merges data into the current object
bool
notify()
(PECL pthreads >= 2.0.0)
Send notification to the referenced object
bool
notifyOne()
(PECL pthreads >= 3.0.0)
Send notification to the referenced object. This unblocks at least one
of the blocked threads (as opposed to unblocking all of them, as seen with
Threaded::notify()).
mixed
pop()
(PECL pthreads >= 2.0.0)
Pops an item from the objects property table
void
run()
(PECL pthreads >= 2.0.0)
The programmer should always implement the run method for objects
that are intended for execution.
mixed
shift()
(PECL pthreads >= 2.0.0)
Shifts an item from the objects property table
mixed
synchronized(Closure $block, mixed ...$_)
(PECL pthreads >= 2.0.0)
Executes the block while retaining the referenced objects
synchronization lock for the calling context
bool
wait(int $timeout = 0)
(PECL pthreads >= 2.0.0)
Will cause the calling context to wait for notification from the
referenced object
bool
offsetExists(TKey $offset)
No description
mixed
offsetGet(TKey $offset)
No description
void
offsetSet(TKey $offset, TValue $value)
No description
void
offsetUnset(TKey $offset)
No description