
Frank Kupke wrote:
Andrew,
Thanks for pointing your finger at it Am 04.08.2010 um 17:48 schrieb Andrew Coppin:
In that case, is there a way to determine whether or not the rest of the transaction completed? Because it looks like you can the same exception either way, regardless of whether a commit happened or not.
Ah, now I see. Excellent point. I was always focussing the commit case which is well designed, I am certain.
OK, so there's design work to do here. (Or at least, things to think about.) But that's OK. It's new and exciting. :-)
What impact (if any) does threaded vs non-threaded RTS have?
I have done a few tests with threads and could not find a significant difference. But I really did not look deep and thorough enough into it to give a qualified answer.
I have a vague recollection of there being a situation to do with calling foreign code that makes all Haskell threads block in the non-threaded RTS, but not in the threaded one. Depending on how big your send and receive buffers are and how long everything is blocked for, it might not matter. I just thought I'd ask about it...