码迷,mamicode.com
首页 > 编程语言 > 详细

多线程

时间:2017-07-09 18:15:35      阅读:196      评论:0      收藏:0      [点我收藏+]

标签:操作系统   访问   生命周期   影响   计数器   单元   快速   系统资源   初始化   

程序进入内存时,即变成一个进程,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位

进程三个特征:

  独立性:进程是系统中独立存在的实体,拥有自己独立的资源,有自己私有的地址空间,没有经过进程本身允许的情况下,一个用户进程不能直接访问其他进程的地址空间

  动态性:进程与程序的区别在于,程序是静态的指令集合,而进程是正在系统中活动的指令集合,进程中加入的时间概念,进程有自己的生命周期和各种不同的状态,程序不具备这些

  并发性:多个进程可以在单个处理器上并发执行,多个进程间不会互相影响

并发和并行:

  并行是同一时刻,多个指令在多个处理器上同时执行

  并发指在同一时刻只有一条指令执行,但多个进程指令被快速轮换,宏观上被同时执行

并发方式:

  共用式的多任务操作策略

  抢占式多任务操作策略:效率更高更常用

多线程:

  扩展了多进程,使得同一个进程可以同时并发处理多个任务。

  线程thread也被称为轻量级进程,是进程的执行单元,类似进程在操作系统中的地位,线程在程序中是独立的,并发的执行流,进程初始化后,主线程就被创立。

  线程是进程的组成部分,一个进程有多个线程,一个线程必须有一个父进程,线程可以有自己的堆栈,自己的程序计数器和局部变量,但不能拥有系统资源,与父进程的其他线程共享该进程的全部资源。

  线程是独立运行的,不知道进程中其他线程的存在,执行时抢占式的

  一个线程可以创建和撤销另一个线程,同一个进程中多个线程可以并发执行

多线程编程优点:

  进程间不能共享内存,线程间非常容易

  系统创建进程要为该进程重新分配系统资源,但创建线程代价很小,多线程来实现多任务并发比多进程效率高

  Java内置了多线程功能支持,简化了多线程编程

多线程

标签:操作系统   访问   生命周期   影响   计数器   单元   快速   系统资源   初始化   

原文地址:http://www.cnblogs.com/zawjdbb/p/7142132.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!