class Thread extends Threaded implements Countable, Traversable, ArrayAccess (View source)

(PECL pthreads >= 2.0.0)
When the start method of a Thread is invoked, the run method code will be executed in separate Thread, in parallel.
After the run method is executed the Thread will exit immediately, it will be joined with the creating Thread at the appropriate time.

Properties

protected Worker $worker

Worker object in which this Threaded is being executed

from  Threaded

Methods

void
addRef()

(PECL pthreads >= 3.0.0)
Increments the internal number of references to a Threaded object

from  Threaded
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

from  Threaded
int
count()

(PECL pthreads >= 2.0.0)
Returns the number of properties for this object

from  Threaded
void
delRef()

(PECL pthreads >= 3.0.0)
Decrements the internal number of references to a Threaded object

from  Threaded
static bool
extend(string $class)

(PECL pthreads >= 2.0.8)
Makes thread safe standard class at runtime

from  Threaded
int
getRefCount()

(PECL pthreads >= 3.0.0)
Retrieves the internal number of references to a Threaded object

from  Threaded
bool
isRunning()

(PECL pthreads >= 2.0.0)
Tell if the referenced object is executing

from  Threaded
bool
isGarbage()

(PECL pthreads >= 3.1.0)

from  Threaded
bool
isTerminated()

(PECL pthreads >= 2.0.0)
Tell if the referenced object was terminated during execution; suffered fatal errors, or threw uncaught exceptions

from  Threaded
bool
merge($from, $overwrite = true)

(PECL pthreads >= 2.0.0)
Merges data into the current object

from  Threaded
bool
notify()

(PECL pthreads >= 2.0.0)
Send notification to the referenced object

from  Threaded
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()).

from  Threaded
mixed
pop()

(PECL pthreads >= 2.0.0)
Pops an item from the objects property table

from  Threaded
void
run()

(PECL pthreads >= 2.0.0)
The programmer should always implement the run method for objects that are intended for execution.

from  Threaded
mixed
shift()

(PECL pthreads >= 2.0.0)
Shifts an item from the objects property table

from  Threaded
mixed
synchronized(Closure $block, mixed ...$_)

(PECL pthreads >= 2.0.0)
Executes the block while retaining the referenced objects synchronization lock for the calling context

from  Threaded
bool
wait(int $timeout = 0)

(PECL pthreads >= 2.0.0)
Will cause the calling context to wait for notification from the referenced object

from  Threaded
bool
offsetExists(TKey $offset)

No description

from  Threaded
mixed
offsetGet(TKey $offset)

No description

from  Threaded
void
offsetSet(TKey $offset, TValue $value)

No description

from  Threaded
void
offsetUnset(TKey $offset)

No description

from  Threaded
int
getCreatorId()

(PECL pthreads >= 2.0.0)
Will return the identity of the Thread that created the referenced Thread

static Thread
getCurrentThread()

(PECL pthreads >= 2.0.0)
Return a reference to the currently executing Thread

static int
getCurrentThreadId()

(PECL pthreads >= 2.0.0)
Will return the identity of the currently executing Thread

int
getThreadId()

(PECL pthreads >= 2.0.0)
Will return the identity of the referenced Thread

bool
isJoined()

(PECL pthreads >= 2.0.0)
Tell if the referenced Thread has been joined

bool
isStarted()

(PECL pthreads >= 2.0.0)
Tell if the referenced Thread was started

bool
join()

(PECL pthreads >= 2.0.0)
Causes the calling context to wait for the referenced Thread to finish executing

bool
start(int $options = PTHREADS_INHERIT_ALL)

(PECL pthreads >= 2.0.0)
Will start a new Thread to execute the implemented run method

Details

void addRef()

(PECL pthreads >= 3.0.0)
Increments the internal number of references to a Threaded object

Return Value

void

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

Parameters

int $size

The number of items to fetch

bool $preserve

[optional]

Preserve the keys of members, by default false

Return Value

array

An array of items from the objects property table

int count()

(PECL pthreads >= 2.0.0)
Returns the number of properties for this object

Return Value

int

The custom count as an integer.

The return value is cast to an integer.

void delRef()

(PECL pthreads >= 3.0.0)
Decrements the internal number of references to a Threaded object

Return Value

void

static bool extend(string $class)

(PECL pthreads >= 2.0.8)
Makes thread safe standard class at runtime

Parameters

string $class

The class to extend

Return Value

bool

A boolean indication of success

int getRefCount()

(PECL pthreads >= 3.0.0)
Retrieves the internal number of references to a Threaded object

Return Value

int

The number of references to the Threaded object

bool isRunning()

(PECL pthreads >= 2.0.0)
Tell if the referenced object is executing

Return Value

bool

A boolean indication of state

bool isGarbage()

(PECL pthreads >= 3.1.0)

Return Value

bool

Whether this object is garbage or not

See also

Collectable::isGarbage

bool isTerminated()

(PECL pthreads >= 2.0.0)
Tell if the referenced object was terminated during execution; suffered fatal errors, or threw uncaught exceptions

Return Value

bool

A boolean indication of state

bool merge($from, $overwrite = true)

(PECL pthreads >= 2.0.0)
Merges data into the current object

Parameters

$from
$overwrite

Return Value

bool

A boolean indication of success

bool notify()

(PECL pthreads >= 2.0.0)
Send notification to the referenced object

Return Value

bool

A boolean indication of success

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()).

Return Value

bool

A boolean indication of success

mixed pop()

(PECL pthreads >= 2.0.0)
Pops an item from the objects property table

Return Value

mixed

The last 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.

Return Value

void

mixed shift()

(PECL pthreads >= 2.0.0)
Shifts an item from the objects property table

Return Value

mixed

The first 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

Parameters

Closure $block

The block of code to execute

mixed ...$_

[optional]

Variable length list of arguments to use as function arguments to the block

Return Value

mixed

The return value from the block

bool wait(int $timeout = 0)

(PECL pthreads >= 2.0.0)
Will cause the calling context to wait for notification from the referenced object

Parameters

int $timeout

[optional]

An optional timeout in microseconds

Return Value

bool

A boolean indication of success

bool offsetExists(TKey $offset)

No description

Parameters

TKey $offset

An offset to check for.

Return Value

bool

true on success or false on failure.

The return value will be casted to boolean if non-boolean was returned.

See also

ArrayAccess::offsetExists

mixed offsetGet(TKey $offset)

No description

Parameters

TKey $offset

The offset to retrieve.

Return Value

mixed

Can return all value types.

See also

ArrayAccess::offsetGet

void offsetSet(TKey $offset, TValue $value)

No description

Parameters

TKey $offset

The offset to assign the value to.

TValue $value

The value to set.

Return Value

void

See also

ArrayAccess::offsetSet

void offsetUnset(TKey $offset)

No description

Parameters

TKey $offset

The offset to unset.

Return Value

void

See also

ArrayAccess::offsetUnset

int getCreatorId()

(PECL pthreads >= 2.0.0)
Will return the identity of the Thread that created the referenced Thread

Return Value

int

A numeric identity

static Thread getCurrentThread()

(PECL pthreads >= 2.0.0)
Return a reference to the currently executing Thread

Return Value

Thread

An object representing the currently executing Thread

static int getCurrentThreadId()

(PECL pthreads >= 2.0.0)
Will return the identity of the currently executing Thread

Return Value

int

A numeric identity

int getThreadId()

(PECL pthreads >= 2.0.0)
Will return the identity of the referenced Thread

Return Value

int

A numeric identity

bool isJoined()

(PECL pthreads >= 2.0.0)
Tell if the referenced Thread has been joined

Return Value

bool

A boolean indication of state

bool isStarted()

(PECL pthreads >= 2.0.0)
Tell if the referenced Thread was started

Return Value

bool

A boolean indication of state

bool join()

(PECL pthreads >= 2.0.0)
Causes the calling context to wait for the referenced Thread to finish executing

Return Value

bool

A boolean indication of success

bool start(int $options = PTHREADS_INHERIT_ALL)

(PECL pthreads >= 2.0.0)
Will start a new Thread to execute the implemented run method

Parameters

int $options

[optional]

An optional mask of inheritance constants, by default PTHREADS_INHERIT_ALL

Return Value

bool

A boolean indication of success