From: SourceForge.net <no...@so...> - 2003-11-26 22:16:38
|
Feature Requests item #849901, was opened at 2003-11-26 22:16 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=360894&aid=849901&group_id=10894 Category: 47. Threading Group: None Status: Open Resolution: None Priority: 5 Submitted By: Simon White (s_a_white) Assigned to: Andreas Kupries (andreas_kupries) Summary: Cooperative event threading Initial Comment: I was wondering if anything could be supported towards cooperative event threading in standard tcl. What I mean is that each event + main gets it own stack. Currently when we call update or use tkwait (and friends) the current execution blocks and a new event starts. The old execution appears not to start until completion of all events. However what about making all stacks independent such that an execution can be marked as sleeping. For an update an old execution will not be marked as runnable until all events are processed providng the same behaviour as before. Things performing tkwait will however become runnable earlier and perhaps at the end of the current event things that have become runnable should be processed before any further new events. The result is basically cooperative multi-tasking for events allowing us to provide mutex style event blocking through tkwait, etc. This sort of support I feel is lacking where you are forced to do an update to complete an operation and a new overlapped operation occurs that you wish to process after the current one has finished, but to do that you must terminate (or somehow regenerate later) the new one. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=360894&aid=849901&group_id=10894 |