built-in predicate

threaded_ignore/1

Description

threaded_ignore(Goal)

Proves Goal asynchronously using a new thread. Only the first goal solution is found. The argument can be a message sending goal. This call always succeeds, independently of the result (success, failure, or exception), which is simply discarded instead of being sent back to the message queue of the object containing the call (this).

Note

This predicate requires a backend Prolog compiler providing compatible multi-threading primitives. The value of the read-only threads flag is set to supported when that is the case.

Meta-predicate template

threaded_ignore(0)

Modes and number of proofs

threaded_ignore(@callable) - one

Errors

Goal is a variable:
instantiation_error
Goal is neither a variable nor a callable term:
type_error(callable, Goal)

Examples

Prove Goal asynchronously in a new thread:
threaded_ignore(Goal)
Prove ::Message asynchronously in a new thread:
threaded_ignore(::Message)
Prove Object::Message asynchronously in a new thread:
threaded_ignore(Object::Message)