10.5 library(threadutil): Interactive thread utilities
All Application Manual Name SummaryHelp

  • Documentation
    • Reference manual
      • Multithreaded applications
        • library(threadutil): 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
          • thread_alias/1
    • Packages
Availability::- use_module(library(threadutil)).(can be autoloaded)
Source[det]with_stopped_threads(:Goal, Options)
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.