package com.javarush.task.task25.task2508;

public class TaskManipulator implements Runnable, CustomThreadManipulator {

    Thread thread;


    @Override
    public void start(String threadName) {
        thread = new Thread(this);
        thread.start();
        thread.setName(threadName);
    }

    @Override
    public void stop() {

        if(thread.getName().equals("fifth"))
        thread.interrupt();

    }

    @Override
    public void run() {

        while (!thread.isInterrupted()) {

            System.out.println(thread.getName());

            try {
                Thread.sleep(100);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    }
}
В соответствии с требованием, stop() пытается остановить последний поток, но почему-то метод interrupt() не срабатывает, либо по какой-то причине while (!thread.isInterrupted()) не видит, что переменная isInterrupted() сменилась на true. Кроме того, не могу понять, почему прерываются предыдущие 4 потока. По идее они должны продолжать крутиться, мы ведь их нигде не прерывали. Однако названия этих потоков перестают бесконечно выводиться, а выводится бесконечно только название последнего потока