Tk isn't thread safe, but there are ways how to use it with threads safely - basically, load it into one thread only (which means
require instead of
use) and don't share anything from it. For an example, see
PM::CB::G.
map{substr$_->[0],$_->[1]||0,1}[\*||{},3],[[]],[ref qr-1,-,-1],[{}],[sub{}^*ARGV,3]