<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Signal on erpan&#39;s note</title>
    <link>https://940504.top/tags/signal/</link>
    <description>Recent content in Signal on erpan&#39;s note</description>
    <image>
      <title>erpan&#39;s note</title>
      <url>https://940504.top/%3Clink%20or%20path%20of%20image%20for%20opengraph,%20twitter-cards%3E</url>
      <link>https://940504.top/%3Clink%20or%20path%20of%20image%20for%20opengraph,%20twitter-cards%3E</link>
    </image>
    <generator>Hugo -- 0.154.5</generator>
    <language>en</language>
    <copyright>浙ICP备2021018236号-1</copyright>
    <lastBuildDate>Thu, 10 Jun 2021 23:36:38 +0800</lastBuildDate>
    <atom:link href="https://940504.top/tags/signal/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>信号和容器关闭</title>
      <link>https://940504.top/posts/%E4%BF%A1%E5%8F%B7%E5%92%8C%E5%AE%B9%E5%99%A8%E4%BC%98%E9%9B%85%E5%85%B3%E9%97%AD/</link>
      <pubDate>Thu, 10 Jun 2021 23:36:38 +0800</pubDate>
      <guid>https://940504.top/posts/%E4%BF%A1%E5%8F%B7%E5%92%8C%E5%AE%B9%E5%99%A8%E4%BC%98%E9%9B%85%E5%85%B3%E9%97%AD/</guid>
      <description>&lt;h1 id=&#34;前提概要&#34;&gt;前提概要&lt;/h1&gt;
&lt;h2 id=&#34;信号概念&#34;&gt;信号概念&lt;/h2&gt;
&lt;p&gt;进程间通信&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;socket&lt;/li&gt;
&lt;li&gt;消息队列&lt;/li&gt;
&lt;li&gt;管道：类似瀑布开发模式&lt;/li&gt;
&lt;li&gt;共享内存&lt;/li&gt;
&lt;li&gt;信号量：一般和共享内存一起使用&lt;/li&gt;
&lt;li&gt;信号：应急事件、通知&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;信号，一般是异常情况下的工作模式（其他几种通信方式是常规情况下的），是进程间通信唯一一种异步通信方式，即可以在任何时候发送信号给一个进程。&lt;/p&gt;
&lt;!-- TEASER_END --&gt;
&lt;p&gt;为了响应各种各样的事件，定义了下面64种信号：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt; 1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 8
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 9
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;10
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;11
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;12
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;13
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;14
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;root@whatfuck ~&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;# kill -l&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt; 1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGHUP       2&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGINT       3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGQUIT      4&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGILL       5&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGTRAP
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt; 6&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGABRT      7&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGBUS       8&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGFPE       9&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGKILL     10&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGUSR1
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;11&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGSEGV     12&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGUSR2     13&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGPIPE     14&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGALRM     15&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGTERM
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;16&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGSTKFLT   17&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGCHLD     18&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGCONT     19&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGSTOP     20&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGTSTP
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;21&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGTTIN     22&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGTTOU     23&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGURG      24&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGXCPU     25&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGXFSZ
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;26&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGVTALRM   27&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGPROF     28&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGWINCH    29&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGIO       30&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGPWR
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;31&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGSYS      34&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMIN    35&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMIN+1  36&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMIN+2  37&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMIN+3
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;38&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMIN+4  39&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMIN+5  40&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMIN+6  41&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMIN+7  42&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMIN+8
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;43&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMIN+9  44&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMIN+10 45&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMIN+11 46&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMIN+12 47&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMIN+13
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;48&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMIN+14 49&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMIN+15 50&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMAX-14 51&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMAX-13 52&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMAX-12
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;53&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMAX-11 54&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMAX-10 55&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMAX-9  56&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMAX-8  57&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMAX-7
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;58&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMAX-6  59&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMAX-5  60&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMAX-4  61&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMAX-3  62&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMAX-2
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;63&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMAX-1  64&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; SIGRTMAX
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;对收到的信号有三种处理方式&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
