review37
线程的常用方法
1.start()
线程调用该方法将启动线程,使之从新建状态进入就绪队列排队。
2.run()
3.sleep()
4.isAlive()
线程处于新建状态时,线程调用isAlive()方法返回false。
public class ClassRoom implements Runnable {
Thread student, teacher;
ClassRoom()
{
teacher = new Thread(this);
student = new Thread(this);
teacher.setName("王教授");
student.setName("张三");
}
@Override
public void run() {
// TODO Auto-generated method stub
if(Thread.currentThread() == student)
{
System.out.println(student.getName() + "正在睡觉, 不听课");
try {
Thread.sleep(1000*100);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
System.out.println(student.getName() + "被老师叫醒了");
}
}
else if(Thread.currentThread() == teacher)
{
for(int i = 1; i <= 3; i++){
System.out.println("上课");
try {
Thread.sleep(500);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
student.interrupt();
}
}
}
运行
public class Test03 {
public static void main(String[] args) {
// TODO Auto-generated method stub
ClassRoom room6501 = new ClassRoom();
room6501.student.start();
room6501.teacher.start();
}
}
运行结果如下所示:

review37的更多相关文章
随机推荐
- [python数据结构] hashable, list, tuple, set, frozenset
学习 cs212 unit4 时遇到了 tuple, list, set 同时使用的问题,并且进行了拼接.合并操作.于是我就被弄混了.所以在这里进行一下总结. hashable and unhasha ...
- CSS3 Flex布局(项目)
一.order属性 order属性定义项目的排列顺序.数值越小,排列越靠前,默认为0. 二.flex-grow属性 flex-grow属性定义项目的放大比例,默认为0,即如果存在剩余空间,也不放大. ...
- [转载]移动页面所需meta元素和Viewport窗口知识点
Meta标签 vs Viewport http://www.2cto.com/kf/201409/335779.html http://blog.csdn.net/freshlover/articl ...
- pythpn的zip函数
zip可接受多个序列作为参数,返回一个tuple列表. 例1:没有参数 >>> b = zip() >>> print b [] 例2:一个参数 >>& ...
- python获取当前目录路径和上级路径
在使用python的时候总会遇到路径切换的使用情况,如想从文件夹test下的test.py调用data文件夹下的data.txt文件: . └── folder ├── data │ └── data ...
- android学习二---解决ADT Buddle无法自动生成layout和res
开发环境: 1)windows 7 64位 2)adt-bundle-windows-x86_64-20140624 3)Android Development Toolkit Version: 23 ...
- java中使用axis发布和调用webService及dom4j解析xml字符串
工作中需要调用webService服务,这里记录一下如何在java中发布和调用webService. 需要的jar包: webService服务端: import javax.jws.WebMetho ...
- MVC4 中使用 Area 和 注意的地方
在MVC项目中经常会使用到Area来分开不同的模块让项目结构更加的清晰. 步骤如下: 项目 –> 添加 -> 区域 (Area) 输入 Admin 添加成功后 Area包含:创建一个空 ...
- Java - 在控制台中执行一个可执行jar
1.Maven打包一个可执行jar: <build> <plugins> <plugin> <groupId>org.apache.maven.plug ...
- bootstrap-select 使用笔记 设置选中值及手动刷新
直接笔记: 1.页面刚加载完填充select选项数据时,需要手动刷新一下组件,否则没有选项值.(组件初始化时,li 与 option 分离的,需要刷新一下(据说)) $.post('/cpms/tod ...