/usr/local/lib/swipl/library/thread.pl
All Application Manual Name SummaryHelp

  • swipl
    • library
      • error.pl
      • debug.pl -- Print debug messages and test assertions
      • apply.pl
      • lists.pl -- List Manipulation
      • broadcast.pl
      • shlib.pl
      • option.pl
      • thread_pool.pl
      • gensym.pl
      • settings.pl
      • arithmetic.pl
      • main.pl -- Provide entry point for scripts
      • readutil.pl -- Read utilities
      • operators.pl -- Manage operators
      • pairs.pl
      • prolog_source.pl
      • record.pl -- Access compound arguments by name
      • quasi_quotations.pl -- Define Quasi Quotation syntax
      • pure_input.pl
      • solution_sequences.pl -- Modify solution sequences
      • ordsets.pl
      • random.pl
      • base64.pl
      • aggregate.pl -- Aggregation operators on backtrackable predicates
      • yall.pl
      • sandbox.pl
      • apply_macros.pl -- Goal expansion rules to avoid meta-calling
      • assoc.pl -- Binary associations
      • prolog_format.pl
      • predicate_options.pl -- Access and analyse predicate options
      • csv.pl -- Process CSV (Comma-Separated Values) data
      • pprint.pl -- Pretty Print Prolog terms
      • atom.pl -- Operations on atoms
      • modules.pl
      • occurs.pl
      • prolog_xref.pl
      • prolog_colour.pl
      • lazy_lists.pl
      • ugraphs.pl
      • url.pl -- Analysing and constructing URL
      • www_browser.pl -- Open a URL in the users browser
      • prolog_pack.pl
      • git.pl -- Run GIT commands
      • utf8.pl
      • dialect.pl
      • system.pl
      • terms.pl
      • date.pl
      • persistency.pl
      • iostream.pl -- Utilities to deal with streams
      • prolog_stack.pl
      • edinburgh.pl
      • prolog_clause.pl
      • prolog_breakpoints.pl -- Manage Prolog break-points
      • wfs.pl -- Well Founded Semantics interface
      • prolog_code.pl -- Utilities for reasoning about code
      • sort.pl
      • dicts.pl -- Dict utilities
      • dif.pl
      • varnumbers.pl -- Utilities for numbered terms
      • pio.pl -- Pure I/O
      • base32.pl -- Base32 encoding and decoding
      • charsio.pl
      • codesio.pl -- I/O on Lists of Character Codes
      • coinduction.pl
      • heaps.pl -- heaps/priority queues
      • rbtrees.pl -- Red black trees
      • statistics.pl -- Get information about resource usage
      • when.pl -- Conditional coroutining
      • backcomp.pl -- Backward compatibility
      • check.pl
      • nb_set.pl -- Non-backtrackable sets
      • threadutil.pl -- Interactive thread utilities
      • macros.pl -- Macro expansion
      • prolog_jiti.pl
      • edit.pl -- Editor interface
      • hashtable.pl
      • make.pl -- Reload modified source files
      • strings.pl
      • qsave.pl -- Save current program as a state or executable
      • zip.pl -- Access resource ZIP archives
      • optparse.pl -- command line parsing
      • portray_text.pl
      • prolog_versions.pl -- Demand specific (Prolog) versions
      • listing.pl -- List programs and pretty print clauses
      • thread.pl -- High level thread primitives
        • concurrent/3
        • concurrent_forall/2
        • concurrent_forall/3
        • concurrent_and/2
        • concurrent_and/3
        • concurrent_maplist/2
        • concurrent_maplist/3
        • concurrent_maplist/4
        • first_solution/3
        • call_in_thread/2
      • intercept.pl -- Intercept and signal interface
      • increval.pl -- Incremental dynamic predicate modification
      • tables.pl
      • ansi_term.pl
      • ctypes.pl -- Character code classification
      • quintus.pl
      • shell.pl -- Elementary shell commands
      • streams.pl -- Manage Prolog streams
      • prolog_codewalk.pl -- Prolog code walker
      • prolog_history.pl -- Per-directory persistent commandline history
      • prolog_config.pl
      • prolog_coverage.pl -- Coverage analysis tool
      • files.pl
      • prolog_wrap.pl
      • prolog_debug.pl
      • prolog_profile.pl -- Execution profiler
      • writef.pl
      • exceptions.pl -- Exception classification
      • fastrw.pl
      • tty.pl
      • readln.pl
      • help.pl -- Text based manual
      • prolog_trace.pl
      • prolog_autoload.pl -- Autoload all dependencies
      • prolog_metainference.pl
      • explain.pl -- Describe Prolog Terms
      • oset.pl
      • rwlocks.pl
 call_in_thread(+Thread, :Goal) is semidet
Run Goal as an interrupt in the context of Thread. This is based on thread_signal/2. If waiting times out, we inject a stop(Reason) exception into Goal. Interrupts can be nested, i.e., it is allowed to run a call_in_thread/2 while the target thread is processing such an interrupt.

This predicate is primarily intended for debugging and inspection tasks.