title: Signal handling and sigemptyset()
body: <p>Could anyone please explain in a really easy way to understand what sigemptyset() does? Why is it useful? I've read a bunch of definitions but i just don't understand. From what i gather it tracks the signals that are being used for blocking purposes? I'm not really sure i understand why that would be useful. Is it so we do not get that specific signal recursively? </p>
  
  <p>Basic example where sigemptyset() is used:</p>
  
  <pre><code>#include &lt;signal.h&gt;
  #include &lt;stdio.h&gt;
  #include &lt;unistd.h&gt;
  
  int main(){
  
  struct sigaction act;
  sigemptyset(&amp;act.sa_mask);
  act.sa_handler=function_name;
  act.sa_flags=0;
  
  sigaction(SIGINT, &amp;act, 0);
  
  }
  </code></pre>