1. A method for a target thread selection in a multi-threaded process, the method comprising: receiving a signal, at said multi-threaded process, that may or may not be masked by threads in a thread list of said multi-threaded process; searching, by said multi-threaded process or another process, a thread subset of said thread list for a target thread that can handle the signal; in response to said searching, receiving a spinlock; in response to completion of said searching said thread subset for said target thread, releasing said spinlock; and searching remaining threads in said thread list, for said target thread, by a signal daemon, if said target thread is not found in said thread subset, by said multi-threaded process or another process.