Re: Non Blocking Support
- Posted by Jonas Temple <jtemple at yhti.net> Feb 15, 2007
- 620 views
CChris wrote: > Sure does. And perhaps the next win32lib version could have a task_yield() > in doEvents(), provided there is a zero time way to prevent the call from > Eu intrepreters that don't support task_yield. > I didn't test, but OTOH I'd hink the task_yield() n the message loop is > overkill and could eat some CPU as it would be executed often for no benefit. > . You appear to be well placed o test whether it is necessary to leave that > > call there. Maybe Rob could comment on the overhead of repeating task_yield()? One possible solution is to have a routine in Win32Lib that could turn on/off the task_yield() call by the programmer. That way when you have more than 1 task running (other than the main task) you could turn on task_yield() and then turn off when the secondary tasks have completed. Rob, everything I've seen from the tasking system seems to work just fine. I did run into some very strange results where Euphoria variables would appear to be changed in the middle of a routine but I think that had to do more with timing of the tasks. It would be nice if the debugger would show you what task you're debugging. I think any time you add tasking to a Windows based program it will not be a trivial change. Careful consideration will have to be given. If I had my way, we'd have threads in EU but I don't think that will happen. > > Thanks for the detailed reply. Glad to help! Jonas Temple http://www.innovativesys.net