threaded_peek(Goal) threaded_peek(Goal, Tag)
Checks if the result of proving Goal
in a new thread is already available. This call succeeds or fails without blocking execution waiting for a reply to be available.
The argument of this predicate should be a variant of the argument of the corresponding threaded_call/1 call. When the predicate argument is subsumed by the threaded_call/1 call argument, the threaded_peek/1
call will succeed iff its argument unifies with an already available solution of the (more general) goal.
The variant threaded_peek/2
accepts a threaded call identifier tag generated by the calls to the threaded_call/2
and threaded_once/2
predicates. Tags shall be considered as an opaque term; users shall not rely on its type.
threaded_peek(+callable) threaded_peek(+callable, +nonvar)
instantiation_error
type_error(callable, Goal)
instantiation_error
threaded_peek(Goal)
threaded_peek(::Goal)
threaded_peek(Object::Goal)