catch package:concurrency
Catch an exception. This is only required to be able to catch
exceptions raised by
throw, unlike the more general
Control.Exception.catch function. If you need to be able to catch
all errors, you will have to use
IO.
Wait for any of the supplied asynchronous operations to complete. The
value returned is a pair of the
Async that completed, and the
result that would be returned by
wait on that
Async.
If multiple
Asyncs complete or have completed, then the value
returned corresponds to the first completed
Async in the list.
Like
waitAnyCatch, but also cancels the other asynchronous
operations as soon as one has completed.
A version of
waitAnyCatch that can be used inside a
MonadSTM transaction.
Wait for an asynchronous action to complete, and return either
Left e if the action raised an exception e, or
Right a if it returned a value a.
A version of
waitCatch that can be used inside a
MonadSTM transaction.
Wait for the first of two Asyncs to finish.
A version of
waitEitherCatch that can be used inside a
MonadSTM transaction.