Linux
文章平均质量分 64
Sweet_wen
加油,加油,加油
展开
-
Linux进程间通信(信号量)
什么是信号量 为了防止出现因多个程序同时访问一个共享资源而引发的一系列问题,我们需要一种方法,它可以通过生成并使用令牌来授权,在任一时刻只能有一个执行线程访问代码的临界区域。 信号量的作用主要是用来保护共享资源,使得资源在一个时刻只有一个进程(线程) 。 相关概念:临界资源:同时只允许一个进程使用的资源。 临界区:访问临界资源的程序段。 信号量 更正式的一个定义原创 2017-04-20 21:09:18 · 428 阅读 · 0 评论 -
Linux I/O复用——select系统调用
Linux中I/O复用使得程序能够同时监听多个文件描述符,这对提高程序的性能至关重要。 Linux下实现I/O复用的系统调用主要有select、poll、epoll。 select系统调用 select的主要用途是:在一段时间内,监听用户感兴趣的文件描述符上的可读,可写和异常事件。1.select原型#include<sys/select.h> int select(int nfds,fd_s原创 2017-05-07 01:06:17 · 729 阅读 · 0 评论 -
Linux中多线程
1.概念 进程:运行中的程序。 线程:一个程序中的多个执行路径。更准确的定义是:线程是一个进程内部的一个控制序列。 2.为什么要有线程? 用fork调用进程代价太高,需要让一个进程同时做多件事情,线程就非常有用。 3.线程的优点和缺点。 优点: (1)有时,让程序看起来是在同时做两件事是非常有用的。 比如在编辑文档时,还能统计文档里的单词个数。 (2)一个混杂着输入、计算、输出的程序原创 2017-04-27 16:19:23 · 693 阅读 · 0 评论 -
进程和线程的区别
概念 进程:正在运行中的程序。 线程:进程中的一条执行路径。 2.区别 (1)通常在一个进程中可以包含若干个线程,它们可以利用进程所拥有的资源。在引入线程的操作系统中,通常都是把进程作为分配资源的基本单位,而把线程作为独立运行和独立调度的基本单位。 (2)线程和进程的区别在于,子进程和父进程有不同的代码和数据空间,而多个线程则共享数据空间,每个线程有自己的执行堆栈和程序计数器为其执行上下文原创 2017-07-04 20:50:59 · 334 阅读 · 0 评论