On Thu, Mar 31, 2011 at 12:53 PM, Dino Viehland <di...@microsoft.com> wrote:
> Jimmy wrote: > > If you're interested in building your own debugger, take a look at > > http://devhawk.net/2009/07/08/MicrosoftScriptingDebugging.aspx. > > Microsoft.Scripting.Debugging.dll gives you APIs for non-blocking > debugging > > by rewriting the expression tree. This doesn't require the interpreter. > > It's non-blocking in the same way that sys.settrace is non-blocking though, > you > still need to pump messages while you're in sys.settrace if you want it to > feel like a non-blocking GUI API. And that could eventually stack overflow > if you > have lots of App -> Script -> App -> Script -> App -> Script transitions. > But > it is the right place to start looking. Right, thanks for the clarification. By the way, I've solved the app-hanging issue by running all IronPython code on a non-UI thread, and having any user IronPython code manipulate "dispatching" data structures (DispatchingObservableCollection, DispatchingPropertyChangedObject, etc ... basically implementations which dispatch to the UI thread if being used from a non-UI thread). Those structures are data bound to the UI. Not very general-purpose, or very performant, but it solved my problem.
_______________________________________________ Users mailing list Users@lists.ironpython.com http://lists.ironpython.com/listinfo.cgi/users-ironpython.com