POE provides a cooperative multi-tasking environment. So if your events for each session are short lived enough you can pretty much ensure that a scheduled event will get called pretty close to the right time. You probably want to mix the ideas from http://poe.perl.org/?POE_Cookbook/Recurring_Alarms with the ideas from http://poe.perl.org/?POE_Cookbook/TCP_Port_Redirection_With_Components perhaps.
On Wed, Aug 17, 2011 at 11:42 PM, Rizwan Hisham <rizwanhas...@gmail.com> wrote: > Dear List, > I have some experience with perl but am new to POE. POE is a beautiful > discovery by the way, solves 95% of my problems. I work for a VoIP service > provider and am writing a billing system which should handle calls in > realtime. Each cal will have a separate session. So if there are 10000 > calls, we have corresponding 10000 sessions as well. But i need 1 priority > session which will have higher execute right on all others. It has to > execute after every specified interval of time. So if for example 5000 > sessions out of 10000 are scheduled to execute at the same time as that one > important session, that 1 session should execute first and then give way to > others. > > I believe prioritized session execution is not currently available in POE, > or maybe i have not been able to find it yet. Is there any workaround for my > problem? One possibility is to execute the session in blocking mode with > POE::Wheel::Run which should not block the rest of the program but runs > separately. I have not explored this idea yet but I think this can work. If > anyone has better idea then please share. > > Thanks > > -- > Best Ragards > Rizwan Qureshi > VoIP/Asterisk Engineer > Axvoice Inc. > > V: +92 (0) 3333 6767 26 > E: rizwanhas...@gmail.com > W: www.axvoice.com >