1
2
3
4
5
6
7
8
9
10
11
12
13
14 package ch.qos.logback.classic.issue.lbclassic135.lbclassic139;
15
16 import org.slf4j.Logger;
17
18 import ch.qos.logback.classic.LoggerContext;
19 import ch.qos.logback.core.contention.RunnableWithCounterAndDone;
20
21
22
23
24
25
26 public class Accessor extends RunnableWithCounterAndDone {
27 private Logger logger;
28 final Worker worker;
29 final LoggerContext loggerContext;
30
31 Accessor(Worker worker, LoggerContext lc) {
32 this.worker = worker;
33 this.loggerContext = lc;
34 logger = lc.getLogger(this.getClass());
35 }
36
37 public void run() {
38 print("entered run()");
39
40 while (!isDone()) {
41 logger.info("Current worker status is: {}.", worker);
42 }
43 print("leaving run()");
44 }
45
46 void print(String msg) {
47 String thread = Thread.currentThread().getName();
48 System.out.println("[" + thread + "] " + msg);
49 }
50 }