In [Tcl]-land, we often discourage use of [threads], for reasons documented elsewhere [[explain]]. Here's an example of how to think about design involving threads: