Timed

trait Timed[T]

Trait that provides a timeoutAfter construct, which allows you to specify a timeout for an operation passed as a by-name parameter, as well as a way to signal/interrupt it if the operation exceeds its time limit.

Companion:
object
class Object
trait Matchable
class Any

Value members

Abstract methods

def timeoutAfter(timeout: Span, f: => T, signaler: Signaler, exceptionFun: Option[Throwable] => StackDepthException): T

Execute the passed in function f and time it, if the time it takes to complete the function the function execution exceeds the passed in timeout, call the passed in exceptionFun to create an instance of StackDepthException and the implementation is responsible to handle it.

Execute the passed in function f and time it, if the time it takes to complete the function the function execution exceeds the passed in timeout, call the passed in exceptionFun to create an instance of StackDepthException and the implementation is responsible to handle it.

Value parameters:
exceptionFun

the function to create StackDepthException for failure

f

the passed in function to be timed

signaler

the Signaler used to signal/interrupt the function when time limit exceeded

timeout

the maximum amount of time allowed for the passed function

Returns:

the T returned by function f