API question: large data processing handler
Julien Zefi
jzefip at gmail.com
Tue Jun 4 15:45:19 UTC 2013
On Tue, Jun 4, 2013 at 8:29 AM, Maxim Dounin <mdounin at mdounin.ru> wrote:
> Hello!
>
> On Tue, Jun 04, 2013 at 12:23:33AM -0600, Julien Zefi wrote:
>
> > On Sun, Jun 2, 2013 at 8:29 PM, Julien Zefi <jzefip at gmail.com> wrote:
> >
> > > hi,
> > >
> > > i am writing a module that creates and returns large amount of data,
> > > obviously this is blocking the worker but my main function that create
> the
> > > data can be called many times to get the result by parts.
> > >
> > > I cannot find what's the right way to setup my handler, the intention
> is
> > > to invoke my function many times as required and send out the results
> by
> > > chunks, whats the best approach ?
>
> I would recommend to set r->write_event_handler, and use
> ngx_add_timer() with 1ms timeout to schedule another call to your
> handler.
>
>
hi Maxim,
thanks for your response. Why a timer is required ?, my expectation is that
my function be called when the client socket is ready for write again. My
function is encoding video packets so i expect this:
1. initial handler called, setup the write event callback
2. once the client socket is ready for write, invoke my write_event
callback
3. write the packet
4. repeat #2 and #3 until the callback decide to finish the request
is that possible ?
J.Z.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx-devel/attachments/20130604/8996df18/attachment.html>
More information about the nginx-devel
mailing list