use strict; use warnings; use Config; use threads; use threads::shared; print("Config{useithreads} : " . $Config{"useithreads"} . "\n"); print("main starting\n"); my $t1 = threads->create(&__logger); my $t2 = threads->create(&__logger); $t1->join(); $t2->join(); sleep 12; print("main done\n"); sub __logger { #threads->detach(); # raise the error "already detached" print(threads -> self -> tid(). ":logger init\n"); sleep(10); print(threads -> self -> tid(). ":logger closed\n"); return "fish"; }