linux多线程(1)

Linux多线程编程
先来谈一谈进程:进程是cpu分配内存资源的最小单位。
线程是轻量级的进程,没有进程就没有线程,一个进程包括多个线程。
多线程:共享一块资源 信号量,条件变量
多进程:创建子进程 会拷贝父进程的所有资源,导致资源的浪费 通信有管道,共享内存等方法
介绍一些概念
并发:在同一时间,只有一条指令执行,但是在宏观上有多个进程同时执行效果。看起来是 同时发生,单核。

并行:同时时刻,多条指令在多个处理器上同时执行,真正的同时发生。

同步:彼此有这依赖关系的调用不应该“同时发生”,而同步就是要阻止那些“同时发生”的事情。可以通过锁 来管理。

异步: 相对于同步相对,任何两个彼此独立的操作都是异步的,它表示事情的独立发生。 提现了事件的独立性。

多线程的优势
1,在多处理器中开发程序的并行性
2,在等待慢速IO操作时,程序可以执行其他的操作,提高并发性
3,模块化的编程,能够清楚表达出程序的苏丽事件的关系,结果清晰
4,占用较少的资源’

应当注意的是 多线程不一定要 多处理器

你可能感兴趣的:(linux多线程(1))