关注
public synchronized void lock(long millis) throws InterruptedException, TimeoutException {
long base = System.currentTimeMillis();
long now = 0;
waitQueue.add(Thread.currentThread());
while (isSync) {
now = System.currentTimeMillis() - base;
if (now >= millis) {
// 这里是否应该添加 waitQueue.remove(Thread.currentThread)
throw new TimeoutException();
}
this.wait(millis);
}
waitQueue.remove(Thread.currentThread());
currentThread = Thread.currentThread();
isSync = true;
System.out.println(Thread.currentThread().getName() + " get the lock");
}如果在规定等待时间内没有获得lock,抛出timeout异常的时候,应该在list中remove掉对应的thread对象
查看原帖
点赞 4
相关推荐
05-11 12:05
中国矿业大学 Java 点赞 评论 收藏
分享
04-14 14:42
西北大学 产品经理 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 我的求职总结 #
23206次浏览 434人参与
# 我的工作日记 #
96173次浏览 1262人参与
# 毕业季,给职场新人一些建议 #
19285次浏览 356人参与
# 晒一晒你收到的礼盒 #
61395次浏览 370人参与
# 我的实习日记 #
2433069次浏览 25376人参与
# 辞职之后最想做的一件事 #
9689次浏览 156人参与
# Offer比较,求稳定还是求发展 #
48737次浏览 235人参与
# 薪资一样,你会选择去大厂还是小公司 #
15908次浏览 99人参与
# 你想吐槽公司的哪些规定 #
16791次浏览 66人参与
# 选offer应该考虑哪些因素 #
16956次浏览 275人参与
# 你见过最离谱的招聘要求是什么? #
187903次浏览 1401人参与
# 机械人还在等华为开奖吗? #
216873次浏览 1097人参与
# 第一份工作应该只看薪资吗 #
138249次浏览 1456人参与
# 秋招想进国企该如何准备 #
57529次浏览 374人参与
# 为了秋招你都做了哪些准备? #
10481次浏览 161人参与
# 在国企工作的人,躺平了吗? #
327295次浏览 3842人参与
# 你怀疑过自己的专业选择吗? #
17124次浏览 201人参与
# 牛客十周岁生日快乐 #
129296次浏览 1517人参与
# 你想留在一线还是回老家? #
37455次浏览 447人参与
# 你小时候最想从事什么职业 #
91038次浏览 1701人参与