关于线程(Thread)的几个问题

来源:互联网 发布:visual c 知乎 编辑:程序博客网 时间:2024/06/05 04:14

1.什么是线程?
一个程序同时执行多个任务,每一个任务称为一个线程。

2.多线程与多进程的区别?
本质的区别在于每个进程拥有自己的一整套变量即独立的地址空间,而线程则共享数据。

3.线程的状态?
线程可以有6种状态:New(新创建)、Runnable(可运行、就绪)、Blocked(被阻塞)、Waiting(等待)、Timed waiting(计时等待)、Terminated(被终止)。

4.线程优先级?
在Java中,每一个线程都有一个优先级,可以调用void setPriority(int newPriority)设置线程的优先级,优先级可以设置为MIN_PRIORITY(在Tread类中定义为1)到MAX_PRIORITY(在Thread类中定义为10)之间的任何int值,其中NORM_PRIORITY被定义为5.

5.守护线程?
可以用void setDaemon(boolean isDaemon)方法把线程转化为守护线程,这一方法必须在线程启动之前调用。守护线程的用途是为其他线程提供服务,如果只剩下守护线程,就没必要继续运行程序了。

原创粉丝点击