① 这两个方法来自不同的类分别是,sleep来自Thread类,和wait来自Object类。
sleep是Thread的静态类方法,谁调用的谁去睡觉,即使在a线程里调用b的sleep方法,实际上还是a去睡觉,要让b线程睡觉要在b的代码中调用sleep。
② 锁: 最主要是sleep方法没有释放锁,而wait方法释放了锁,使得其他线程可以使用同步控制块或者方法。
Thread.sleep(0)的作用是“触发操作系统立刻重新进行一次CPU竞争”。
sleep是Thread的静态类方法,谁调用的谁去睡觉,即使在a线程里调用b的sleep方法,实际上还是a去睡觉,要让b线程睡觉要在b的代码中调用sleep。
② 锁: 最主要是sleep方法没有释放锁,而wait方法释放了锁,使得其他线程可以使用同步控制块或者方法。
Thread.sleep(0)的作用是“触发操作系统立刻重新进行一次CPU竞争”。
③ 使用范围:wait,notify和notifyAll只能在同步控制方法或者同步控制块里面使用,而sleep可以在任何地方使用。
2.java开发环境
1).java源文件,经过编译,生成.class字节码文件
JVM加载.class并运行.class
跨平台、一次编程到处使用
2)JVM:java虚拟机d
加载并运行.class
JRE:java运行环境
除了包含JVM以外还包含运行java程序所需要的必须的环境
JRE=JVM+java系统类库
JDK:java开发工具包
除了包含JRE以外还包含开发java程序所需要的命令工具
JDK=JRE+开发工具(编译、运行......)
3.eclipse