object

timeout

Predicates for calling goal with a time limit.

Author: Paulo Moura
Version: 0:6:0
Date: 2019-12-02
Compilation flags:
static, context_switching_calls
Dependencies:
(none)
Remarks:
  • Supported backend Prolog systems: B-Prolog, ECLiPSe, SICStus Prolog, SWI-Prolog, XSB, and YAP.

Inherited public predicates:
(none)

Public predicates

call_with_timeout/2

Calls a goal deterministically with the given time limit (expressed in seconds). Note that the goal may fail or throw an error before exhausting the time limit.

Compilation flags:
static
Template:
call_with_timeout(Goal,Timeout)
Meta-predicate template:
call_with_timeout(0,*)
Mode and number of proofs:
call_with_timeout(+callable,+positive_number) - zero_or_one
Exceptions:
Goal does not complete in the allowed time:
timeout(Goal)

call_with_timeout/3

Calls a goal deterministically with the given time limit (expressed in seconds) returning a reified result: true, fail, timeout, or error(Error).

Compilation flags:
static
Template:
call_with_timeout(Goal,Timeout,Result)
Meta-predicate template:
call_with_timeout(0,*,*)
Mode and number of proofs:
call_with_timeout(+callable,+positive_number,--atom) - one

Operators

(none)