in reply to per thread signal?

Signals are process-level constructs. This doesn't have anything to do with perl as such--it's the way POSIX threads are defined. Asynchronous signals act on the entire process, rather than on any individual thread. (Or should, for a POSIX conformant thread implementation)

Quite a few people would have preferred signals act on individual threads, but this has its own set of problems. Neither way is particularly great, and each sucks in its own unique fashion. The POSIX folks chose the whole process route. Just one of those things.