多线程入门
来源:互联网 发布:java常用接口 编辑:程序博客网 时间:2024/05/16 12:31
注:本文用于记录自己的平时学习,有错误还请多多指教
一.多线程入门
1.什么是线程:首先进程是线程的集合(一个进程中至少有一个线程),那么线程就是控制进程如何执行的一条路径
比如点击QQ这个进程会自动弹出来让我们输入账号密码的界面,这就是线程控制的,进程是一个静态概念,不能执行 ,只能分配空间。
2.每个线程都有自己运行的东西,这个叫任务,CPU一次同时只能运行一个线程。
3.创建线程是实现runnable接口好,还是继承Thread类好? 答:前者好,因为实现接口还可以继承别的,但是继承之后 就不能继承别的类了4.为什么使用多线程,多线程实例 答:多线程可以提高程序效率,比如迅雷多任务下载5.线程常用的api常用线程api方法
start()
启动线程
currentThread()
获取当前线程对象
getID()
获取当前线程ID Thread-编号 该编号从0开始
getName()
获取当前线程名称
sleep(long mill)
休眠线程
Stop()
停止线程
常用线程构造函数
Thread()
分配一个新的 Thread 对象
Thread(String name)
分配一个新的 Thread对象,具有指定的name正如其名。
Thread(Runable r)
分配一个新的 Thread对象
Thread(Runable r, String name)
分配一个新的 Thread对象,name是你给线程起的名字
6.线程可能出现的状态
1)新建状态:例如new Thread(r)2)就绪状态 :启动start方法,此时线程不一定运行,因为线程之间要争夺CPU资源3.执行状态:获得CPU资源后进入运行转台4)阻塞状态:由于某些原因线程暂时不运行 5)死亡状态:如执行 完run方法之后会自然死亡
二。常见面试题
1.进程与线程的区别?
答:进程是所有线程的集合,每一个线程是进程中的一条执行路径,线程只是一条执行路径。
2.为什么要用多线程?
答:提高程序效率
3.多线程创建方式?
答:继承Thread或Runnable接口。
4.是继承Thread类好还是实现Runnable接口好?
答:Runnable接口好,因为实现了接口还可以继续继承。继承Thread类不能再继承。
5.你在哪里用到了多线程?
答:主要能体现到多线程提高程序效率。
举例:分批发送短信、迅雷多线程下载等。
比如点击QQ这个进程会自动弹出来让我们输入账号密码的界面,这就是线程控制的,进程是一个静态概念,不能执行 ,只能分配空间。
2.每个线程都有自己运行的东西,这个叫任务,CPU一次同时只能运行一个线程。
常用线程api方法
start()
启动线程
currentThread()
获取当前线程对象
getID()
获取当前线程ID Thread-编号 该编号从0开始
getName()
获取当前线程名称
sleep(long mill)
休眠线程
Stop()
停止线程
常用线程构造函数
Thread()
分配一个新的 Thread 对象
Thread(String name)
分配一个新的 Thread对象,具有指定的name正如其名。
Thread(Runable r)
分配一个新的 Thread对象
Thread(Runable r, String name)
分配一个新的 Thread对象,name是你给线程起的名字
6.线程可能出现的状态
1)新建状态:例如new Thread(r)
1.进程与线程的区别?
答:进程是所有线程的集合,每一个线程是进程中的一条执行路径,线程只是一条执行路径。
2.为什么要用多线程?
答:提高程序效率
3.多线程创建方式?
答:继承Thread或Runnable接口。
4.是继承Thread类好还是实现Runnable接口好?
答:Runnable接口好,因为实现了接口还可以继续继承。继承Thread类不能再继承。
5.你在哪里用到了多线程?
答:主要能体现到多线程提高程序效率。
举例:分批发送短信、迅雷多线程下载等。
阅读全文
0 0
- 多线程 入门
- 多线程入门
- 多线程入门
- 多线程入门
- 多线程入门
- 多线程入门
- 多线程入门
- 多线程入门
- 多线程入门
- 多线程入门
- 多线程入门
- 多线程入门
- 多线程快速入门
- Java 多线程入门大全
- Java多线程程序设计入门
- Java多线程程序设计入门
- Java多线程入门
- Java多线程程序设计入门
- CSS三大特性
- Java读取Excel文件,生成SQL语句
- 2017-11-3周测试题
- css去除ios中input和textarea的阴影
- ubuntu设置pptp-vpn访问
- 多线程入门
- Css样式
- svn提交更新还原报错
- 阿里云机器安装Tensorflow和Paddlepaddle
- easyui + webuploader 爬坑集合不定期更新中
- 蓝牙协议分析(5)_BLE广播通信相关的技术分析
- 一些人生感悟摘抄和自己的感悟--2017备忘录内容
- iOS开发之利用链式编程和贝瑟尔曲线来画图
- CD为什么采用44.1kHz采样频率的问题