第九章-线程笔记:
1.线程的创建有两种方式:(1)继承Thread类;(2)重写Runnerbale接口(必须重写run函数)。
2.推荐使用重写Runnerable接口来使用线程。原因:(1)继承只能继承一个类,固定;(2)重写接口的话,仍然可以集成其他类或者是调用其他接口,灵活性高
3.重写的方案不能抛出原方法不同的异常
4.join(合并某个线程): 将线程放在本方法中运行(类似于函数调用)
5.sleep(休眠当前线程):暂时停止执行指定的毫秒。可以调用Thread的静态方法。只要时sleep,一定会发现InterruptedException 所以在使用sleep函数的时候,一定要使用try-catch方法防止出现错误
6.yied(让出CPU,给其他线程执行的机会):
7.安全的停止线程:自己创建shutdown函数(不建议使用stop(stop已经停用)和interrupt)
8.synchronized
9.sleep方法是Thread类中的函数,wait是Object 类中的函数
10.notify方法用来叫醒wait中的进程,来自Object类