diff --git a/proj2/nachos/threads/LotteryScheduler.class b/proj2/nachos/threads/LotteryScheduler.class index 79fd0b1..0ad4ea0 100644 Binary files a/proj2/nachos/threads/LotteryScheduler.class and b/proj2/nachos/threads/LotteryScheduler.class differ diff --git a/threads/LotteryScheduler.java b/threads/LotteryScheduler.java index ef943e5..a67bc5e 100644 --- a/threads/LotteryScheduler.java +++ b/threads/LotteryScheduler.java @@ -124,17 +124,17 @@ public class LotteryScheduler extends PriorityScheduler { protected void add_upstream(KThread x,KThread y) { + update(y,thread_effective_tickets.get(x)); if(!upstream.get(x).containsKey(y)) upstream.get(x).put(y,1); else upstream.get(x).put(y,upstream.get(x).get(y)+1); - update(y,thread_effective_tickets.get(x)); } protected void remove_upstream(KThread x,KThread y) { - upstream.get(x).put(y,upstream.get(x).get(y)-1); update(y,-thread_effective_tickets.get(x)); + upstream.get(x).put(y,upstream.get(x).get(y)-1); } protected class lottery_queue extends ThreadQueue