suspend() 和 resume() 方法, 属于Thread类下的方法,与stop()方法一样,都是被标记为废弃的方法。
已经被wait()和notify()取代。
suspend()方法调用后,线程不会释放已经占有的资源,而且是占有着资源进入到睡眠状态,容易引发死锁的问题。
被挂起的线程此时的生命周期是RUNABLE——这与Object.wait()方法不同。
另外如果resume()操作意外地在suspend()前就执行了,那么被挂起的线程很难有机会被继续执行(wait方法可以指定等待时间)
suspend() resume() 和 wait()\notify() 的区别
1.前者属于Thread类,后者是Object
2.前者可以放到任何代码块中被调用,而后者必须在 synchronized 方法或块中调用。