什么是线程如何查看线程( 二 )


1.3 线程安全
线程不持有资源,但是同一进程中的所有线程可以共享进程的资源,所以说我们遇到的大部分线程的问题基本是因为共享资源引起的 。
也就是说,当多个线程同时访问一块共享资源(某一块内存),因为时序性问题,会导致数据错乱,这就是线程不安全 。
1.4 同步、异步
同步:在发出一个同步调用时,在没有得到结果之前,该调用就不返回 。
异步:在发出一个异步调用后,调用者不会立刻得到结果,该调用就返回了 。
1.5 并发,并行
并发是同一个时间段内,几个作业都在同一个CPU上运行,但任意一个时刻点上只有一个作业在处理机上运行 。
并行是同一个时间段内,几个作业在几个CPU上运行,任意一个时刻点上,有多个作业在同时运行,并且多个作业之间互不干扰
什么是线程线程是操作系统能够进行运算调度的最小单位 。它被包含在进程之中,是进程中的实际运作单位 。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务 。
线程是独立调度和分派的基本单位 。线程可以为操作系统内核调度的内核线程,如Win32线程;由用户进程自行调度的用户线程,如Linux平台的POSIX Thread;或者由内核与用户进程,如Windows 7的线程,进行混合调度 。
同一进程中的多条线程将共享该进程中的全部系统资源,如虚拟地址空间,文件描述符和信号处理等等 。但同一进程中的多个线程有各自的调用栈(call stack),自己的寄存器环境(register context),自己的线程本地存储(thread-local storage) 。
一个进程可以有很多线程,每条线程并行执行不同的任务 。
线程特点
1、轻型实体
线程中的实体基本上不拥有系统资源,只是有一点必不可少的、能保证独立运行的资源 。线程的实体包括程序、数据和TCB 。线程是动态概念,它的动态特性由线程控制块TCB(Thread Co