Commit | Line | Data |
---|---|---|
087a198a AM |
1 | package org.lttng.ust.tests; |
2 | ||
3 | import java.io.IOException; | |
4 | import java.util.LinkedList; | |
5 | import java.util.List; | |
6 | import java.util.logging.FileHandler; | |
7 | import java.util.logging.Handler; | |
8 | import java.util.logging.Level; | |
9 | import java.util.logging.Logger; | |
10 | import java.util.logging.SimpleFormatter; | |
11 | ||
12 | public class Runner implements Runnable { | |
13 | ||
14 | private final List<Worker> workers; | |
15 | private final List<Thread> workerThreads; | |
16 | ||
17 | public Runner(int nbThreads, Logger log) throws SecurityException, | |
18 | IOException { | |
19 | Worker curWorker; | |
20 | ||
21 | workers = new LinkedList<>(); | |
22 | workerThreads = new LinkedList<>(); | |
23 | ||
24 | for (int i = 0; i < nbThreads; i++) { | |
25 | curWorker = new Worker(i, log); | |
26 | workers.add(curWorker); | |
27 | workerThreads.add(new Thread(curWorker, "worker " + i)); | |
28 | } | |
29 | } | |
30 | ||
31 | @Override | |
32 | public void run() { | |
33 | // System.out.println("Starting"); | |
34 | for (Thread curThread : workerThreads) { | |
35 | curThread.start(); | |
36 | } | |
37 | ||
38 | for (Thread curThread : workerThreads) { | |
39 | try { | |
40 | curThread.join(); | |
41 | } catch (InterruptedException e) { | |
42 | e.printStackTrace(); | |
43 | } | |
44 | } | |
45 | // System.out.println("Finished"); | |
46 | } | |
47 | } |