多线程入门

来源:互联网 发布: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 对象

 

 

ThreadString name

分配一个新的 Thread对象,具有指定的name正如其名

 

 

ThreadRunable r

分配一个新的 Thread对象

 

 

ThreadRunable r, String name

分配一个新的 Thread对象,name是你给线程起的名字

 

6.线程可能出现的状态 


1)新建状态:
例如new Thread(r)
2)就绪状态 :启动start方法,此时线程不一定运行,因为线程之间要争夺CPU资源
3.执行状态:获得CPU资源后进入运行转台
4)阻塞状态:由于某些原因线程暂时不运行 
5)死亡状态:如执行 完run方法之后会自然死亡


二。常见面试题

1.进程与线程的区别?

:进程是所有线程的集合,每一个线程是进程中的一条执行路径,线程只是一条执行路径。

2.为什么要用多线程?

 :提高程序效率

3.多线程创建方式?

  :继承ThreadRunnable接口。

4.是继承Thread类好还是实现Runnable接口好?

:Runnable接口好,因为实现了接口还可以继续继承。继承Thread类不能再继承。

5.你在哪里用到了多线程?

:主要能体现到多线程提高程序效率。

举例:分批发送短信、迅雷多线程下载等。



原创粉丝点击