您的位置:首页 > 其它

8-25

2015-08-25 22:16 232 查看
1、线程和进程的区别?

进程:是一种“自包容”的运行程序,由操作系统直接管理,直接运行,有自己的地址空间。每个进程一开启都会消耗内存

线程:是进程内部单一的顺序控制流。一个进程拥有多个线程。多个线程共享一个进程的内存空间

2、什么是主线程?有什么特点?

主线程:main方法一运行。就产生了主线程。

主线程的特点:

(1)、最先开始

(2)、最后结束

(3)、产生其他的子线程

(4)、回收资源

3、线程创建有几种方式?

(1).继承Thread类,重写run()

(2).实现Runable接口,实现run()

4、线程如何启动?调用start方法和直接调用run方法有什么区别

调用run(),是普通方法的调用,不会产生新的线程。调用start(),表示在主线程基础上,产生一个新的子线程。这样,子线程和主线程会交替执行。

5、什么是线程优先级,优先级分为几级?

当一个或多个线程,同时处于就绪状态。优先级高的线程,会优先得到执行。优先级一共1级,数字越大,优先级越高,默认为5级。通过setPriority(int a)改变线程的优先级。

6、线程有几种状态?什么时候位于什么样的状态?

(1)新线程:通过new的方式产生一个线程对象

(2)就绪:strart一启动就进入就绪状态。之后线程每次执行在获得资源前都会进入就绪状态。

(3)运行:处于就绪状态的线程得到系统资源后就进入运行状态。

(4)睡眠:调用Thread.sleep()线程就进入睡眠状态。

(5)等待:调用Object的wait()方法

(6)挂起:调用yield(),线程显示出让CPU控制权。

(7)阻塞:等待IO事件输入,如JOptionPane输入框。

(8)死亡:线程run()方法执行完毕。

7、什么是线程同步?线程同步会造成什么结果,线程同步使用什么关键字?

线程同步:

当两个或两个以上的线程同时访问同一个资源时,为了保护资源的数据安全,只允许同一时间一个线程对该资源进行访问。

synchronized同步关键字,当该关键字修饰方法时,该方法叫做同步方法。同步方法意味着,该方法同一时间只允许一个线程访问。

同步造成的后果:

1.数据安全

2.效率地下
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: