Re: select

Gregory Wright <[email protected]> Thu, 24 Sep 2009 06:36:38 -0700
Newsgroups gmane.comp.multimedia.helix.devel
Message-ID <[email protected]>
Hi John, where are you at with this?

We have not used selectors in Helix for *some* time now. They use to  
be used
quit a bit but have not been touched/tested in years.

Are you aware that the Kick method returns the number of milliseconds  
you
should sleep before calling again? The engine knows what it has  
scheduled
on the schedule and when it is due to fire off and returns a number  
based
on that. Perhaps that would be useful.

The FDSET is a pretty elegant way to wake up and take care of stuff,  
however
it is not complete enough for the platform's needs. You still need a  
FD that
wakes up every X number of MS to kick the engine. Now, you could have  
that
setup to use the number returned from Kick() I guess and handle it all  
that
way.

Are you thinking of having both, a 1 second Kick() call and then a  
FDSET for
select to use?

--greg.


On Sep 10, 2009, at 7:20 AM, John Stirling wrote:

> Can someone give me some pointers into how to hook stuff into the  
> helix core select() mechanism.
>
> We currently just kick helix every eg 10-50ms in a thread and are  
> planning to replace that with a call to Selector->Select so we can  
> kick it a bit more in line with demand from the core.
>
> The basic select mechanism seems to be working ok. We can kick helix  
> eg every 1 second as default and with the call to select in our loop  
> we will see it kick the core more regularly when something is playing.
>
> What I don't currently understand is how to hook something in (eg  
> from a filesystem plugin) to the main core select mechanism.  
> Specifically we have a replacement http filesystem that uses curl  
> for the transfers and want to add the stuff returned from  
> curl_multi_fdset (i think) into the list.
>
> John
>
>
>
> _______________________________________________
> Helix-client-dev mailing list
> [email protected]
> http://lists.helixcommunity.org/mailman/listinfo/helix-client-dev