axlPointer vortex_async_queue_timedpop ( VortexAsyncQueue queue,
long  microseconds 
)

Pop the first data available in the queue, locking the calling if no data is available, but bounding the waiting to the value provided.

The function is ensured to return with a reference to some data.

Parameters
queueThe queue where data will be required.
microsecondsThe period to wait. 1 second = 1.000.000 microseconds.
Returns
A reference to the next data available.
Parameters
queue
microseconds
Returns
A reference to the data queue, or NULL if the timeout is reached.

References vortex_cond_timedwait(), vortex_mutex_lock(), vortex_mutex_unlock(), and vortex_timeval_substract().

Referenced by vortex_channel_get_reply(), vortex_channel_wait_reply(), vortex_hash_lock_until_changed(), vortex_pull_next_event(), vortex_sasl_start_auth_sync(), vortex_tls_start_negotiation_sync(), vortex_xml_rpc_boot_channel_sync(), and vortex_xml_rpc_invoke_sync().