码迷,mamicode.com
首页 >  
搜索关键字:信号处理函数    ( 139个结果
10.6 可重入函数
当一个信号捕获到并开始被进程处理的时候,进程正常执行的指令序列将被信号处理函数临时中断,进程立即转到信号处理函数中开始执行,如果信号处理函数返回(而不是调用exit或者是longjmp等),然后在进入信号处理函数之前进程正在执行的指令序列将会接着执行,但是在信号处理函数中,我们无法获知在信号被捕获的 ...
分类:其他好文   时间:2016-05-15 19:38:03    阅读次数:199
Linux高级编程--08.线程概述
线程 有的时候,我们需要在一个基础中同时运行多个控制流程。例如:一个图形界面的下载软件,在处理下载任务的同时,还必须响应界面的对任务的停止,删除等控制操作。这个时候就需要用到线程来实现并发操作。 和信号处理函数的控制在处理完信号之后就结束不同的是,多线程的控制流程可以长期并存,操作系统会在各线程之间... ...
分类:编程语言   时间:2016-05-13 09:53:39    阅读次数:132
UNIX环境高级编程(阅读笔记)---多线程信号
多线程信号 1.默认情况下,信号将由主进程接收处理,就算信号处理函数是由子线程注册的  2. 每个线程均有自己的信号屏蔽字,可以使用sigprocmask函数来屏蔽某个线程对该信号的响应处理,仅留下需要处理该信号的线程来处理指定的信号。  3. 对某个信号处理函数,以程序执行时最后一次注册的处理函数为准,即在所有的线程里,同一个信号在任何线程里对该信号的处理一定相同  4. 可以使用pth...
分类:编程语言   时间:2016-05-12 17:31:16    阅读次数:201
volatile关键字与竞态条件和sigchild信号
volatile限定符从性能的角度取消了编译器的优化,每次读取数据直接从内存中读取,不从编译器中读去内容Linux下gcc编译器优化:O0无优化O1缺省,O3最高优化如以下示例:主函数与信号处理函数同时对全局变量进行修改和判断。在主函数中因while循环对该全局变量的值只做判断,因此..
分类:其他好文   时间:2016-05-07 16:48:06    阅读次数:406
SIGCHLD 信号
SIGCHID:子进程在终止时会给父进程发SIGCHLD信号,该信号的默认处理动作是忽略,父进程可以自定义SIGCHLD信号的处理函数,这样父进程只需专心处理自己的工作,不必关心子进程了,子进程终止时会通知父进程,父进程在信号处理函数中调用wait清理子进程即可。要想不产生僵尸进程还有另..
分类:其他好文   时间:2016-05-07 01:18:49    阅读次数:169
线程安全与可重入函数
定义(1).线程安全函数:一般说来,一个函数被称为线程安全的,当它被多个并发线程反复调用时,它会一直产生正确的结果。(2).可重入:程序执行到某个函数foo()时,收到信号,于是暂停目前正在执行的函数,转到信号处理函数,而这个信号处理函数的执行过程中,又恰恰也会进入到刚..
分类:编程语言   时间:2016-05-06 19:51:22    阅读次数:208
可重入函数与线程安全的区别和联系
1.关于可重入函数当捕捉到信号时,不论进程的主控制流程当前执行到哪,都会先跳到信号处理函数中执行,从信号处理函数返回后再继续执行主控制流程。信号处理函数是一个单独的控制流程,因为它和主控制流程是异步的,二者不存在调用和被调用的关系,并且使用不同的堆栈空间。引入了信..
分类:编程语言   时间:2016-05-06 02:26:29    阅读次数:277
Linux信号
Linux信号一、信号:在计算机中存在了一组由整数构成的一组数,这组数大多用于软件中断作用。用kill-l可以查看系统中所定义的信号。其中1到31号信号为普通信号,34到64号为实时信号。这里主要讨论普通信号。这些信号的默认动作基本上是中断/忽略,或者为中断/core。core:它是程..
分类:系统相关   时间:2016-05-01 17:51:44    阅读次数:256
定时器
SIGALRM信号:利用该信号的信号处理函数来处理定时任务 基于升序链表的定时器: 利用上述定时器链表来处理非活动连接: 高性能定时器: 1.时间轮 基于排序链表的定时器使用唯一的一条链表来管理所有定时器,插入操作的效率随着定时器数目的增多而降低,时间轮使用hash表的思想,将定时器散列到不同的链表 ...
分类:其他好文   时间:2016-04-20 17:43:54    阅读次数:219
进程 线程 的区别
线程相当于进程的一个执行流,多个线程共享同一进程的地址空间以及共享以下进程资源和环境:1.文件描述符表2.每种信号的处理方式(SIG_IGN、SIG_DFL或者自定义的信号处理函数)3.当前工作目录4.uid、gid线程独立的资源:1.线程id2.上下文,包括各种寄存器的值、程序计数器和栈指针3..
分类:编程语言   时间:2016-04-19 20:23:58    阅读次数:276
139条   上一页 1 ... 5 6 7 8 9 ... 14 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!