
On March 2, 2010 06:17:46 Simon Marlow wrote:
For now I suggest you use setjmp. If you want to suggest an API to tell the RTS about a longjmp, then perhaps we could implement something, but I'm not sure what the API would look like, because you don't have a handle to the in-progress calls. In RTS-speak you need to tell the RTS about which Tasks have been terminated. I've actually been tinkering with this code a bit recently so there is now a structure called InCall which replaces some of what Task was for, but the idea is similar.
Thanks Simon, I haven't quite managed to wrap my head around how the os threads, haskell threads, tasks, and capabilities all fits together in the rts, so I don't have any ideas to suggest for a relevant API. I'll setjmp wrap them. I was guessing that was the most likely option. : ) Cheers! -Tyson