黑马程序员技术交流社区
标题:
多线程的相关知识(有面试会问到的哦)
[打印本页]
作者:
请叫我丶菜鸟
时间:
2014-12-13 21:36
标题:
多线程的相关知识(有面试会问到的哦)
线程状态:
新建一个线程:start ()
运行:具备执行资格,同时具备执行权;
冻结:sleep(time),wait()—notify()唤醒;线程释放了执行权,同时释放执行资格;
临时阻塞状态:线程具备cpu的执行资格,没有cpu的执行权;
消亡:stop()
线程的2种创建方式
(必问)
创建线程的第一种方式
注:
这个是用 实现一个接口Runnable。(Runnable软的谋)
步骤:
1,定义类实现Runnable接口。
2,覆盖接口中的run方法(用于封装线程要运行的代码)。
3,通过Thread类创建线程对象;
4,将实现了Runnable接口的子类对象作为实际参数传递给Thread类中的构造函数。
为什么要传递呢?
因为要让线程对象明确要运行的run方法所属的对象。
5,调用Thread对象的start方法。开启线程,并运行Runnable接口子类中的run方法。
创建线程的第二种方式:
注:
这种方式是用 继承Thread ,由子类复写run方法。
步骤:
1,定义类继承Thread类;
2,目的是复写run方法,将要让线程运行的代码都存储到run方法中;
3,通过创建Thread类的子类对象,创建线程对象;
4,调用线程的start方法,开启线程,并执行run方法。
获取线程名称:
线程名.getName();获取线程名称
currentThread();获取当前线程对象
类名.currentThread();
创建线程两种方式的区别:
作者:
Honelyboy
时间:
2014-12-13 21:38
好认真的笔记。
作者:
boycechan
时间:
2014-12-13 22:13
mark留名,学习下!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2