Bulat,
I would welcome suggestions for improvements. Please let me know how
my code could be made more efficient and more readable, keeping in
mind what I'm trying to accomplish.
Notice that my logic is different from the one that you are proposing.
What I want is to handle exceptions in the forever loop _and_
terminate the forever loop when an exception is posted. The only
reason I have the exception handler is that I want to post a message
when the exception is received, unless it's a KillThread exception.
Unless I'm mistaken, the code above will run forever and will not
exit on exception.
I use the code like this:
tid1 <- forkIO $ writeLoop post h ssl
`finally` finalize sock_lock ssl_lock
but indeed no message will be posted if an exception happens between
the calls to handle and things will just be silently finalized. I'm
not sure how to have it both ways here.
On Dec 12, 2005, at 11:29 AM, Bulat Ziganshin wrote:
Hello Joel,
your code is unreadable, inefficent and don't handle async exceptions
between calls to `handle`. as i already sayed you'd better to use:
handle (...)
repeat_forever
do cmd <- read h ssl
post $! Cmd $! cmd
--
http://wagerlabs.com/
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe