See the http://www.tcl.tk/man/tcl/ThreadCmd/ttrace.htm%|%manual%|% ---- [AMG]: Is there really only the briefest mention of [[thread::ttrace]] on the Tcler's Wiki? Does no one use this command? It seems like it would be a great way to accelerate initializing many worker threads. Does it live up to that promise? Or does it have some overhead that makes it less attractive than simply loading the required packages into each thread's interpreter? Perhaps it's limited in what it supports, e.g. maybe it doesn't recognize [TclOO]. I see it provides a means to extend its capabilities, and maybe that's good enough. But again, there's no discussion that I can find, so I don't know answers to any of these questions. I'm thinking about trying it out myself to see how it stacks up. [AMG]: Okay, a little test. ======none % package require Ttrace 2.8.2 % ttrace::eval {package require sha256} 1.0.3 % thread::create {package require Ttrace; thread::wait} Error from thread tid0x6555b70 can't rename "::sha2::SHA224Final-tcl": command doesn't exist while executing "::rename ::sha2::SHA224Final-tcl {::sha2::SHA224Final}" ("uplevel" body line 880) invoked from within "uplevel [getscript]" (procedure "::ttrace::update" line 10) invoked from within "::ttrace::update" (lambda term "{dir} { if {[info exists ::env(TCL_THREAD_LIBRARY)] && ..." line 11) invoked from within "::apply {{dir} { if {[info exists ::env(TCL_THREAD_LIBRARY)] && [file readable $::env(TCL_THREAD_LIBRARY)/ttrace.tcl]} { source $::env(TCL_THREA..." ("package ifneeded Ttrace 2.8.2" script) invoked from within "package require Ttrace" ====== Apparently Ttrace doesn't like the [rename]-fu employed by sha256.tcl [http://core.tcl.tk/tcllib/artifact/b47454aa1688516a?ln=190]. Maybe [[ttrace::addtrace]] could be used to teach Ttrace about [[rename]], but I really don't know. <> Package | Threads