trait Timed[T] extends AnyRef
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.
- Source
- Timed.scala
- Alphabetic
- By Inheritance
- Timed
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Abstract Value Members
-
abstract
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 intimeout
, call the passed inexceptionFun
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 intimeout
, call the passed inexceptionFun
to create an instance of StackDepthException and the implementation is responsible to handle it.- timeout
the maximum amount of time allowed for the passed function
- f
the passed in function to be timed
- signaler
the
Signaler
used to signal/interrupt the function when time limit exceeded- exceptionFun
the function to create
StackDepthException
for failure- returns
the T returned by function
f