Question: what is sigprocmask in signal?
Answer: sigprocmask() is used to fetch and/or change the signal mask of the calling thread. The signal mask is the set of signals whose delivery is currently blocked for the caller (see also signal(7) for more details). ... The use of sigprocmask() is unspecified in a multithreaded process; see pthread_sigmask(3).