OOP-Projects-Java

Log | Files | Refs | README

commit 3eb31e1ec38ae73a77731621b8b4b46c9f7d1dd8
parent ec6b59ca803013a1d0f5f7866a4428c3f7a263de
Author: William Lindholm <william_lindholm@outlook.com>
Date:   Mon, 20 Feb 2023 14:53:52 +0100

Added timescale variable for debugging and worker logic

Diffstat:
MOOP2023_a22willi_a21liltr_assignment3/src/fika/Worker.java | 18++++++++++++++----
1 file changed, 14 insertions(+), 4 deletions(-)

diff --git a/OOP2023_a22willi_a21liltr_assignment3/src/fika/Worker.java b/OOP2023_a22willi_a21liltr_assignment3/src/fika/Worker.java @@ -5,16 +5,26 @@ import java.util.Timer; import java.util.TimerTask; public class Worker extends Thread { + private static int TimeScale = 10; // used to change speed of simulation (default = 1) + private String name; private int energy; private Random r = new Random(); - private int T; + private int T; //delay used between every iteration. private Timer timer = new Timer(); private TimerTask task = new TimerTask() { public void run() { energy--; - System.out.println(name + ": " + energy); + + if (energy <= 0) { + System.out.println(name + " is going home with energy level " + energy); + task.cancel(); + } else if (energy < 30) { + System.out.println(name + " is taking a break with energy level " + energy); + } else { + System.out.println(name + " Is working with energy level " + energy); + } } }; @@ -24,7 +34,7 @@ public class Worker extends Thread { this.energy = r.nextInt(30, 90); this.T = r.nextInt(500, 1500); - timer.scheduleAtFixedRate(task, T, T); + timer.scheduleAtFixedRate(task, T / TimeScale, T / TimeScale); } @@ -34,6 +44,6 @@ public class Worker extends Thread { this.energy = energy; this.T = r.nextInt(500, 1500); - timer.scheduleAtFixedRate(task, T, T); + timer.scheduleAtFixedRate(task, T / TimeScale, T / TimeScale); } }