什么是线程?它与进程的区别?为什么要使用多线程?
2015-07-20 23:16
1816 查看
1、什么是线程?
线程是指程序在执行过程中,能够执行程序代码的一个执行单元,在Java语言中,线程有四种状态:运行,就绪,挂起,结束。
2、线程与进程的区别?
进程是一段正在运行的程序,而线程有时也被称为轻量级进程,它是进程的执行单元,一个进程可以拥有多个线程,各个线程之间共享程序的内存空间,但是,各个线程拥有自己的栈空间。
3、为什么使用多线程?
(1)、使用多线程可以减少程序的响应时间。单线程如果遇到等待或阻塞,将会导致程序不响应鼠标键盘等操作,使用多线程可以解决此问题,增强程序的交互性。
(2)、与进程相比,线程的创建和切换开销更小,因为线程共享代码段、数据段等内存空间。
(3)、多核CPU,多核计算机本身就具有执行多线程的能力,如果使用单个线程,将无法重复利用计算资源,造成资源的巨大浪费。
(4)、多线程可以简化程序的结构,使程序便于维护,一个非常复杂的进程可以分为多个线程执行。
线程是指程序在执行过程中,能够执行程序代码的一个执行单元,在Java语言中,线程有四种状态:运行,就绪,挂起,结束。
2、线程与进程的区别?
进程是一段正在运行的程序,而线程有时也被称为轻量级进程,它是进程的执行单元,一个进程可以拥有多个线程,各个线程之间共享程序的内存空间,但是,各个线程拥有自己的栈空间。
3、为什么使用多线程?
(1)、使用多线程可以减少程序的响应时间。单线程如果遇到等待或阻塞,将会导致程序不响应鼠标键盘等操作,使用多线程可以解决此问题,增强程序的交互性。
(2)、与进程相比,线程的创建和切换开销更小,因为线程共享代码段、数据段等内存空间。
(3)、多核CPU,多核计算机本身就具有执行多线程的能力,如果使用单个线程,将无法重复利用计算资源,造成资源的巨大浪费。
(4)、多线程可以简化程序的结构,使程序便于维护,一个非常复杂的进程可以分为多个线程执行。
相关文章推荐
- [D-XI] DFFE 2 随机存储器 点IP-core
- Python zip()函数的用法
- OC001---OC概述
- NSNumber的使用
- 易语言读取VC回调接口数据
- 抽屉效果的实现
- GO语言练习:网络编程 ICMP 示例
- [BZOJ1491][NOI2007]社交网络
- ecshop后台广告列表中增加图片查看功能
- SPFileVersion usage
- c语言中函数的简单介绍
- c语言中函数的简单介绍
- javascript 盒子模型
- Iconfont在移动端应用的问题
- Java基础之流程控制
- EclipseMars + Maven + SpringMVC + Tomcat7
- iOS通过OTA方式分发应用的实现
- 数据采集系统开发流程-4
- mac系统上使用压缩包版的mysql(非安装版)
- Hibernate 环境搭建