线程相关
Seven17000
与其临渊羡鱼,不如退而结网。
展开
-
Linux中的线程与线程的基本操作
简介进程的颗粒度太大,每次都要有调入,保存,调出。如果我们把进程比喻为一个运行在电脑上的软件,那么一个软件的执行不可能是一条逻辑执行的,必定有多个分支和多个程序段,就好比要实现程序A,实际分成a,b,c等多个块组合而成,这里的abc就是线程。在Linux系统中其实没有真正意义上的线程,不和windows系统中一样,windows中的进程和线程有着明确的区分,各有各的数据结构,API等等。在linux原创 2017-06-13 22:00:55 · 579 阅读 · 0 评论 -
线程基础
一.多任务系统与进程 进程指运行中的应用程序,每一个进程都有自己独立的内存空间,使得进程之间的地址空间隔离即多任务系统。 多任务系统里操作系统接管了所有的硬件资源,并本身运行在一个受硬件保护的级别。二.线程的概念 线程也被称为轻量级进程,是程序执行流的最小单元,一个标准的线程由线程ID、当前指令指针(PC)、寄存器集合和堆栈组成。通常意义上原创 2016-07-18 22:20:33 · 422 阅读 · 0 评论 -
关于线程中锁的使用以及死锁情况
简介当多个线程同时访问共享数据时可能会冲突。比如两个线程都要把某个全局变量加一,而这个操作在底层实现的时候是需要三条指令完成,也就是说加一的操作不具有原子性。那么也就会造成不同的线程对其进行了加操作。 对于多线程的程序,这种冲突的问题是很常见的,解决的办法就是引入锁的概念。获得锁的线程可以完成对数据的读->修改->写的操作,而没有获取锁的线程就只能等待且不能访问共享数据。也可以说是锁把原本加一这种原创 2017-06-14 17:01:04 · 1080 阅读 · 0 评论