03.线程.txt

UP 返回
1.进程间状态的转化
新建(New)		可运行状态(Runnable)		正在运行(Running)		阻塞(Blocked)		终止(Dead)

线程创建进入New
New调用start后进入Runnable
Runnable获取CPU使用权进入Running,时间片用完后再转回Runnable
Running在其他线程调用join,或者调用wait/sleep,或者有I/O请求处理,则进入Blocked
Blocked等待调用join的线程执行完毕,或者调用notify/notifyAll,或者sleep超时,或者I/O请求完成,进入Runnable
所有状态的线程调用stop后,或者Running执行完毕或者异常终止,则进入Dead(stop方法已废弃)

2.java为线程类提供了10个优先级,用整数1-10表示,超过范围会抛出异常。主线程默认为5
MAX_PRIORITY	最高优先级10
MIN_PRIORITY	最高优先级1
NORM_PRIORITY	最高优先级5

getPriority()	获取线程优先级
setPriority()	设置优先级
优先级与操作系统的实际情况有关,实际执行时不一定会按优先级来,比如start的顺序也会影响到

3.synchronized关键字可以用在成员方法 静态方法 语句块中
	public synchronized void saveAccount() {...}
	public static synchronized void saveAccount() {... }
	synchronized (obj) {...}
DOWN 返回