|
|
MONGOCURSOR.TIMEOUT(3) 1 MONGOCURSOR.TIMEOUT(3) MongoCursor::timeout - Sets a client-side timeout for this query SYNOPSIS
public MongoCursor MongoCursor::timeout (int $ms) DESCRIPTION
A timeout can be set at any time and will affect subsequent queries on the cursor, including fetching more results from the database. PARAMETERS
o $ms - The number of milliseconds for the cursor to wait for a response. Use -1 to wait forever. By default, the cursor will wait $30000 milliseconds (30 seconds). RETURN VALUES
This cursor. ERRORS
/EXCEPTIONS Causes methods that fetch results to throw a MongoCursorTimeoutException if the query takes longer than the specified number of millisec- onds. EXAMPLES
Example #1 MongoCursor.timeout(3) example In the following example, the driver will wait forever for the initial database response, and then wait 100ms for subsequent responses. <?php $cursor = $collection->find(); $cursor->timeout(-1); /* $cursor->hasNext() executes the query. An infinite timeout has been set, so * the driver will wait as long as necessary for a response. */ while ($cursor->hasNext()) { $cursor->timeout(100); /* A timeout has now been set, so if the cursor needs to get more results * from the database, it will only wait 100ms for a response. */ try { print_r($cursor->getNext()); } catch (MongoCursorTimeoutException $e) { echo "query took too long!"; } } ?> NOTES
Warning This does not cause the MongoDB server to cancel long-running operations; it only instructs the driver to stop waiting for a response and throw a MongoCursorTimeoutException after a set time. If you need to specify a server-side timeout for a query, con- sider using MongoCursor::maxTimeMS. SEE ALSO
MongoCursorInterface::timeout, The socketTimeoutMS option for MongoClient.__construct(3). PHP Documentation Group MONGOCURSOR.TIMEOUT(3)