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 O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.