跳转到主要内容

poll

mysqli::poll

mysqli_poll

Poll connections

ENTITY

ENTITY

public

static

int

false

mysqli::poll

array

null

read

array

null

error

array

reject

int

seconds

int

microseconds

0

ENTITY

int

false

mysqli_poll

array

null

read

array

null

error

array

reject

int

seconds

int

microseconds

0

Poll connections. The method can be used as static.

[!NOTE] ENTITY

ENTITY

read
List of connections to check for outstanding results that can be read.

error
List of connections on which an error occurred, for example, query failure or lost connection.

reject
List of connections rejected because no pending asynchronous query exists to poll.

seconds
Maximum number of seconds to wait, must be non-negative.

microseconds
Maximum number of microseconds to wait, must be non-negative.

ENTITY

Returns number of ready connections upon success, ENTITY otherwise.

ENTITY

A ValueError is thrown when neither the read nor error arguments are passed.

ENTITY

ENTITY ENTITY
8.3.0 Now throws a ValueError exception when neither the read nor error arguments are passed.

ENTITY

A mysqli_poll example

<?php
$link1 = mysqli_connect();
$link1->query("SELECT 'test'", MYSQLI_ASYNC);
$all_links = array($link1);
$processed = 0;
do {
    $links = $errors = $reject = array();
    foreach ($all_links as $link) {
        $links[] = $errors[] = $reject[] = $link;
    }
    if (!mysqli_poll($links, $errors, $reject, 1)) {
        continue;
    }
    foreach ($links as $link) {
        if ($result = $link->reap_async_query()) {
            print_r($result->fetch_row());
            if (is_object($result))
                mysqli_free_result($result);
        } else die(sprintf("MySQLi Error: %s", mysqli_error($link)));
        $processed++;
    }
} while ($processed < count($all_links));
?>

    

ENTITY

Array
(
    [0] => test
)

ENTITY

mysqli_query, mysqli_reap_async_query