retry -base

retry :: STM a
base GHC.Conc.Sync, base GHC.Conc, stm Control.Monad.STM
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 udpated. (GHC only)
package retry
package
This package exposes combinators that can wrap arbitrary monadic actions. They run the action and potentially retry running it with some configurable delay for a configurable number of times. The purpose is to make it easier to work with IO and especially network IO actions that often experience temporary failure and warrant retrying of the original action. For example, a database query may time out for a while, in which case we should hang back for a bit and retry the query instead of simply raising an exception. Version 0.3.0.0
Retry :: ResponseNextStep
HTTP Network.HTTP.Base
HdrRetryAfter :: HeaderName
HTTP Network.HTTP.Headers
throwErrnoPathIfMinus1Retry :: (Eq a, Num a) => String -> FilePath -> IO a -> IO a
unix System.Posix.Error
throwErrnoPathIfMinus1Retry :: (Eq a, Num a) => String -> RawFilePath -> IO a -> IO a
unix System.Posix.ByteString.FilePath
throwErrnoPathIfMinus1Retry_ :: (Eq a, Num a) => String -> FilePath -> IO a -> IO ()
unix System.Posix.Error
throwErrnoPathIfMinus1Retry_ :: (Eq a, Num a) => String -> RawFilePath -> IO a -> IO ()
unix System.Posix.ByteString.FilePath
throwErrnoPathIfNullRetry :: String -> FilePath -> IO (Ptr a) -> IO (Ptr a)
unix System.Posix.Error
throwErrnoPathIfNullRetry :: String -> RawFilePath -> IO (Ptr a) -> IO (Ptr a)
unix System.Posix.ByteString.FilePath
throwErrnoPathIfRetry :: (a -> Bool) -> String -> FilePath -> IO a -> IO a
unix System.Posix.Error
throwErrnoPathIfRetry :: (a -> Bool) -> String -> RawFilePath -> IO a -> IO a
unix System.Posix.ByteString.FilePath
throwSocketErrorIfMinus1Retry :: (Eq a, Num a) => String -> IO a -> IO a
network Network.Socket.Internal
Throw an IOError corresponding to the current socket error if the IO action returns a result of -1, but retries in case of an interrupted operation.
throwSocketErrorIfMinus1RetryMayBlock :: (Eq a, Num a) => String -> IO b -> IO a -> IO a
network Network.Socket.Internal
Throw an IOError corresponding to the current socket error if the IO action returns a result of -1, but retries in case of an interrupted operation. Checks for operations that would block and executes an alternative action before retrying in that case.