今天爱分享给大家带来java stop()和 suspend()方法的区别【面试题详解】,希望能够帮助到大家。
反对使用 stop(),是因为它不安全。它会解除由线程获取的所有锁定,而且如果对象处于一种不连贯状态,那么其他线程能在那种状态下检查和修改它们。
suspend()方法容易发生死锁。调用 suspend()的时候,目标线程会停下来,但却仍然持有在这之前获得的锁定。 此时,其他任何线程都不能访问锁定的资源,除非被“挂起”的线程恢复运行。
原文链接:https://blog.itblood.com/1191.html,转载请注明出处。