Wait for Condition

Cond::signal
Semaphore
Cond
PHP Manual

# Cond::wait

(PECL pthreads >= 2.0.0)

Cond::wait — Wait for Condition

### Description

final public static boolean Cond::wait ( long `$condition` , long `$mutex` [, long `$timeout` ] )

Wait for a signal on a Condition Variable, optionally specifying a timeout to limit waiting time.

### Parameters

`condition`

  A handle returned by a previous call to Cond::create().

`mutex`

  A handle returned by a previous call to Mutex::create() and owned (locked) by the caller.

`timeout`

  An optional timeout, in microseconds ( millionths of a second ).

### Return Values

A boolean indication of success.

### Examples

Example #1 Waiting for Conditions

`<?php
/** PLEASE NOTE THIS EXAMPLE WILL CAUSE THE PROCESS TO HANG **/
$mutex = Mutex::create(true);
/** You cannot use the "new" keyword, a Cond is not a PHP object **/
$cond = Cond::create();
/** The caller must lock the associated Mutex before a call to broadcast **/
var_dump(Cond::wait($cond, $mutex));
/** Always destroy Cond you have created **/
Cond::destroy($cond);
Mutex::unlock($mutex);
Mutex::destroy($mutex);
?>`

The above example will output:

    int(49685473)

Cond::signal
Semaphore
Cond
PHP Manual