thread的4个状态:
new
runnable
blocked
dead
其中new之后调用start就变为runnable
java中无法确定an alive thread iss runnable or blocked,也无法确定a runnable is running
sun java VM中所有的线程有着相同的优先级,不对操作系统进行映射
在java1.5之后,有两种机制来保护代码块不受干扰,synchronized和reentrantLock,不过reentrantLock这种实现方法不利于调试死锁,加上遗留代码多调用synchronized,建议使用synchronized。
synchronized 方法
synchronized 块
new
runnable
blocked
dead
其中new之后调用start就变为runnable
java中无法确定an alive thread iss runnable or blocked,也无法确定a runnable is running
sun java VM中所有的线程有着相同的优先级,不对操作系统进行映射
在java1.5之后,有两种机制来保护代码块不受干扰,synchronized和reentrantLock,不过reentrantLock这种实现方法不利于调试死锁,加上遗留代码多调用synchronized,建议使用synchronized。
synchronized 方法
synchronized 块