线程、同步、并发名词解释(摘录)

总述:.Net中的线程允许你构建出快速响应并且高效的应用程序。许多应用程序需要执行多个动作(比如用户界面交互和数据处理),而线程则提供了完成这项工作的能力。

1、线程(thread):代表程序中的单个执行逻辑流程。有些程序只需要一个线程即可高效执行,但许多程序需要多个线程。

2、死锁(deadlocking):有些数据由于线程间出现相互依赖而导致死锁(即线程A拥有线程B正在等待的资源,而线程B拥有线程A正在等待的资源)。

3、竞态条件(race condition):当两个线程同时访问一个共享变量时,两个线程读取变量并且得到相同的值,然后竞争哪一个线程能够最后写入到共享变量中。最后一个写入到变量的线程“取胜”,因为它覆盖了第一个线程写入的值。

4、同步(synchronization):是关于协调线程或进程之间的活动,并确保被多个线程 或进程访问的数据一直有效。同步允许线程和进程步调一致地操作。理解允许你在程序中执行多个线程的构造给了你创建能够更好地利用可用资源、更具拓展性的应用程序的能力。简言之:同步就是协同步调,按预定的先后次序进行运行。如:你说完,我再说。(还是百度百科来的爽快!)

5、并发(concurrency):在操作系统中,是指一个时间段中有几个程序都处于已启动运行到运行完毕之间,且这几个程序都是在同一个处理机上运行。

6、并行(Parallel):当系统有一个以上CPU时,则线程的操作有可能非并发。当一个CPU执行一个线程时,另一个CPU可以执行另一个线程,两个线程互不抢占CPU资源,可以同时进行,这种方式我们称之为并行。

7、并发与并行区别:并行是指两个或者多个事件在同一时刻发生;而并发是指两个或多个事件在同一时间间隔内发生。

8、进程 :是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位.

9、进程与线程区别线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),但是它可与同属一个进程的其他的线程共享进程所拥有的全部资源.

posted @ 2017-02-28 23:22  疯狂的多多  阅读(2325)  评论(0编辑  收藏  举报