retry package:ghc-internal

Retry execution of the current memory transaction because it has seen values in TVars which mean that it should not continue (e.g. the TVars represent a shared buffer that is now empty). The implementation may block the thread until one of the TVars that it has read from has been updated. (GHC only)
Throw an IOError corresponding to the current value of getErrno if the IO action returns a result of -1, but retries in case of an interrupted operation.
as throwErrnoIfMinus1Retry, but checks for operations that would block.
as throwErrnoIfMinus1RetryMayBlock, but discards the result.
as throwErrnoIfMinus1, but discards the result.
Throw an IOError corresponding to the current value of getErrno if the IO action returns nullPtr, but retry in case of an interrupted operation.
as throwErrnoIfNullRetry, but checks for operations that would block.
as throwErrnoIf, but retry the IO action when it yields the error code eINTR - this amounts to the standard retry loop for interrupted POSIX system calls.
as throwErrnoIfRetry, but additionally if the operation yields the error code eAGAIN or eWOULDBLOCK, an alternative action is executed before retrying.
as throwErrnoIfRetryMayBlock, but discards the result.
as throwErrnoIfRetry, but discards the result.