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

  • swipl
    • library
      • error.pl
      • debug.pl
      • apply.pl -- Apply predicates on a list
      • lists.pl
      • broadcast.pl -- Event service
      • shlib.pl
      • option.pl -- Option list processing
      • thread_pool.pl -- Resource bounded thread management
      • gensym.pl
      • settings.pl -- Setting management
      • arithmetic.pl
      • main.pl -- Provide entry point for scripts
      • readutil.pl -- Read utilities
      • operators.pl -- Manage operators
      • pairs.pl -- Operations on key-value lists
      • prolog_source.pl -- Examine Prolog source-files
      • record.pl -- Access compound arguments by name
      • quasi_quotations.pl
      • pure_input.pl
      • solution_sequences.pl
      • ordsets.pl
      • random.pl -- Random numbers
      • base64.pl -- Base64 encoding and decoding
      • aggregate.pl
      • yall.pl
      • sandbox.pl -- Sandboxed Prolog code
      • apply_macros.pl -- Goal expansion rules to avoid meta-calling
      • assoc.pl
      • prolog_format.pl -- Analyse format specifications
      • 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 -- Module utility predicates
      • occurs.pl -- Finding and counting sub-terms
      • prolog_xref.pl -- Prolog cross-referencer data collection
      • prolog_colour.pl -- Prolog syntax colouring support.
      • lazy_lists.pl -- Lazy list handling
      • ugraphs.pl -- Graph manipulation library
      • url.pl
      • www_browser.pl -- Open a URL in the users browser
      • prolog_pack.pl -- A package manager for Prolog
      • git.pl -- Run GIT commands
      • utf8.pl
      • dialect.pl -- Support multiple Prolog dialects
      • system.pl
      • terms.pl
      • date.pl -- Process dates and times
      • persistency.pl -- Provide persistent dynamic predicates
      • iostream.pl -- Utilities to deal with streams
      • prolog_stack.pl -- Examine the Prolog stack
      • edinburgh.pl -- Some traditional Edinburgh predicates
      • prolog_clause.pl
      • prolog_breakpoints.pl
      • wfs.pl
      • prolog_code.pl -- Utilities for reasoning about code
      • sort.pl
      • dicts.pl -- Dict utilities
      • dif.pl -- The dif/2 constraint
      • varnumbers.pl
      • 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
      • statistics.pl
      • when.pl
      • backcomp.pl -- Backward compatibility
      • nb_set.pl -- Non-backtrackable sets
      • tty.pl
      • thread.pl
      • exceptions.pl -- Exception classification
      • writef.pl
      • increval.pl -- Incremental dynamic predicate modification
      • tables.pl
      • oset.pl -- Ordered set manipulation
      • qsave.pl
      • zip.pl -- Access resource ZIP archives
      • prolog_autoload.pl
      • check.pl
      • prolog_codewalk.pl -- Prolog code walker
      • optparse.pl -- command line parsing
      • ctypes.pl -- Character code classification
      • shell.pl
      • portray_text.pl
      • help.pl -- Text based manual
      • make.pl
      • edit.pl -- Editor interface
      • hashtable.pl
      • strings.pl
      • quintus.pl -- Quintus compatibility
      • prolog_debug.pl
      • prolog_coverage.pl -- Coverage analysis tool
      • listing.pl -- List programs and pretty print clauses
      • prolog_metainference.pl -- Infer meta-predicate properties
      • ansi_term.pl -- Print decorated text to ANSI consoles
      • threadutil.pl -- Interactive thread utilities
        • threads/0
        • join_threads/0
        • with_stopped_threads/2
        • thread_has_console/0
        • attach_console/0
        • attach_console/1
        • tspy/1
        • tspy/2
        • tdebug/0
        • tdebug/1
        • tnodebug/0
        • tnodebug/1
        • tbacktrace/1
        • tbacktrace/2
        • tprofile/1
      • prolog_jiti.pl
      • files.pl
      • prolog_versions.pl -- Demand specific (Prolog) versions
      • prolog_history.pl -- Per-directory persistent commandline history
      • prolog_config.pl -- Provide configuration information
      • prolog_profile.pl
      • intercept.pl -- Intercept and signal interface
      • prolog_trace.pl
      • prolog_wrap.pl -- Wrapping predicates
      • rwlocks.pl
      • explain.pl
      • macros.pl -- Macro expansion
      • streams.pl
      • readln.pl
      • fastrw.pl -- Fast reading and writing of terms
 with_stopped_threads(:Goal, Options) is det
Stop all threads except the caller while running once(Goal). Note that this is in the thread user utilities as this is not something that should be used by normal applications. Notably, this may deadlock if the current thread requires input from some other thread to complete Goal or one of the stopped threads has a lock. Options:
stop_nodebug_threads(+Boolean)
If true (default false), also stop threads created with the debug(false) option.
except(+List)
Do not stop threads from this list.
bug
- Note that the threads are stopped when they process signals. As signal handling may be delayed, this implies they need not be stopped before Goal starts.