Monitoring threads

There are two ways to monitor threads, programmatically and using the external tools. We have already seen how the result of a worker calculation could be checked. Let's revisit that code. We will also slightly modify our worker implementation:

class MyRunnable03 implements Runnable {  private String name;  private double result;  public String getName(){ return this.name; }  public double getResult() { return this.result; }  public void run() {    this.name = Thread.currentThread().getName();    double result = IntStream.rangeClosed(1, 100)      .flatMap(i -> IntStream.rangeClosed(1, 99999))      .takeWhile(i -> !Thread.currentThread().isInterrupted())      .asDoubleStream().map(Math::sqrt).average().getAsDouble();    if(!Thread.currentThread().isInterrupted()){ ...

Get Java 9 High Performance now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.