⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 thread.html

📁 这是一个介绍 linux 编程知识的文章。
💻 HTML
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"><HTML><HEAD>    <TITLE>线程中的信号处理</TITLE>    <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=gb2312-80">    <META NAME="COPYRIGHT" CONTENT="魏永明">    <META NAME="AUTHOR" CONTENT="魏永明">    <STYLE>    <!--        H1 { color: #ffff00 }        H2 { color: #ffff00 }        H3 { color: #ff00ff }        H4 { color: #ffff00 }        TD P { color: #b880b8 }        LI { color: #ffffff }        P { color: #00ffff }        PRE { color: #ffffff; font-family: "fixed" }        A:link { color: #00b8ff }        A:visited { color: #ff3366 }    -->    </STYLE></HEAD><BODY TEXT="#ffff00" LINK="#00b8ff" VLINK="#ff3366" BACKGROUND="images/velvet.jpg"><A HREF="function.html"><IMG SRC="prev.gif" ALT="Previous"></A><A HREF="terminal.html"><IMG SRC="next.gif" ALT="Next"></A><A HREF="index.html"><IMG SRC="toc.gif" ALT="Contents"></A><H1 ALIGN=CENTER>6.5&nbsp;&nbsp;线程中的信号处理<BR><BR></H1><UL>        <LI>概念</LI>        <LI>pthread_sigmask</LI>        <LI>pthread_kill 和 sigwait</LI></UL><H3>6.5.1&nbsp;&nbsp;概念</H3><UL>    <LI>按照 POSIX, 异步 (外部) 信号发送到整个进程.</LI>    <LI>所有线程共享同一个设置, 即通过 sigaction 设置的线程处置方法.</LI>    <LI>每个线程有自己的信号掩码, 线程库根据该掩码决定将信号发送到哪个线程.</LI>    <LI>由于 Linux 线程实现上的独特性, 外部信号始终发送到特定的线程.</LI></UL><H3>6.5.2&nbsp;&nbsp;pthread_sigmask</H3><UL>    <LI>pthread_sigmask 用来定义线程的信号掩码</LI>    <LI>其接口与 sigprocmask 一样</LI><PRE>===============================================================================       #include &lt;pthread.h&gt;       #include &lt;signal.h&gt;       int pthread_sigmask (int how, const sigset_t *newmask, sigset_t *oldmask);===============================================================================</PRE></UL><H3>6.5.3&nbsp;&nbsp;pthread_kill 和 sigwait</H3><PRE>===============================================================================       #include <pthread.h>       #include <signal.h>       int pthread_kill (pthread_t thread, int signo);       int sigwait (const sigset_t *set, int *sig);===============================================================================</PRE><UL>    <LI>pthread_kill 向特定的线程发送信号.</LI>    <LI>sigwait 暂定调用线程, 直到 set 中定义的某个信号递达调用线程.</LI>    <LI>sigwait 返回时, sig 中保存的是接收到的信号编号.</LI>    <LI>sigwait 所等待的信号必须在所有线程中阻塞, 而不仅仅是调用线程.</LI></UL><P><BR><BR></P><P ALIGN=CENTER><IMG SRC="images/striped.gif" NAME="Ruler" ALIGN=BOTTOM WIDTH=532 HEIGHT=13 BORDER=0></P><P><BR><BR></P><A HREF="function.html"><IMG SRC="prev.gif" ALT="Previous"></A><A HREF="terminal.html"><IMG SRC="next.gif" ALT="Next"></A><A HREF="index.html"><IMG SRC="toc.gif" ALT="Contents"></A></BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -