您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

每当我更改同步关键字的位置时,wait(n)的行为就不同

每当我更改同步关键字的位置时,wait(n)的行为就不同

与定位同步关键字无关。由于您锁定了另一个对象并尝试等待另一个对象,因此您面临问题。好吧,@ Gray已经对此进行了解释,因此不再重复。

对于您的另一个问题,关于为什么两个线程都被阻塞;

线程A:锁定此[A:可运行]

线程A:锁定[A:可运行]

线程B:正在等待[A:可运行,B:已阻止]

线程A:释放该线程(表示等待)[A:定时等待,B:已阻止]

线程B:锁定此线程[A:定时等待,B:可运行]

线程B:等待已被线程A锁定的线程[A:定时等待,B:已阻止]

线程A:等待被线程B锁定的线程[A:已阻止,B:已阻止]

其他 2022/1/1 18:29:40 有422人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶