Issue a bunch of requests; continue code execution where the stream_select event loop gets called every so often doing I/O while other things are going on. Set the ticks variable to something like 1000. Start the request in hook_init; I/O happens throughout the code; pickup the finished requests in hook_exit.
http://php.net/register-tick-function

Support from Acquia helps fund testing for Drupal Acquia logo

Comments

mikeytown2’s picture

Status: Active » Postponed
Issue tags: +2.x Roadmap

Something to consider in a 2.x release if I have one.

mikeytown2’s picture

Title: Look into using register_tick_function so IO can continue in the background. » Exit event loop once all fwites() have been done; pick back up later on to do all freads().
Status: Postponed » Active
Issue tags: -2.x Roadmap

While interesting, going to change the subject into something more tangible. Launching processes is a better option for most things.

The only thing I find this useful for would be ESI emulation. A better way to do this is to exit the event loop once all fwrite()'s have been done and pick it back up later on in the request to do the fread()'s.

mikeytown2’s picture

Status: Active » Fixed
FileSize
5.62 KB

The following patch has been committed to 6.x & 7.x.

mikeytown2’s picture

Fixed php notice. Patch has been committed to 6.x & 7.x

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.