-
Notifications
You must be signed in to change notification settings - Fork 0
/
HW2Logger.java
27 lines (21 loc) · 945 Bytes
/
HW2Logger.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import java.io.PrintStream;
public class HW2Logger{
private static final HW2Logger _inst = new HW2Logger();
public static HW2Logger getInstance() {
return _inst;
}
private long startTime;
private final PrintStream out = System.out;
private long getTimeDifference() {
return System.nanoTime()-startTime;
}
public void Initialize() {
this.startTime = System.nanoTime();
}
public void Log(int minerID, int smelterID, int transporterID, int constructorID, Action action) {
long currentThreadID = Thread.currentThread().getId();
long timestamp = this.getTimeDifference();
System.out.printf("ThreadID: %d Miner: %d Smelter: %d Transporter: %d Constructor: %d Action: %s TimeStamp: %f ms %n",
currentThreadID, minerID, smelterID, transporterID, constructorID, action.toString(), timestamp / 1000000.0);
}
}