Sobes.tech
Junior — Middle
62

Каким образом реализовать управление потоками через интерфейс в вашем приложении?

Ответ от нейросети

sobes.tech AI

Для управления потоками через интерфейс в Java можно определить интерфейс с методами для запуска, остановки и проверки состояния потока. Затем реализовать этот интерфейс в классах, которые инкапсулируют логику потоков.

Пример:

public interface ThreadController {
    void startThread();
    void stopThread();
    boolean isRunning();
}

public class MyThread implements ThreadController, Runnable {
    private Thread thread;
    private volatile boolean running = false;

    @Override
    public void startThread() {
        if (thread == null || !thread.isAlive()) {
            running = true;
            thread = new Thread(this);
            thread.start();
        }
    }

    @Override
    public void stopThread() {
        running = false;
    }

    @Override
    public boolean isRunning() {
        return running;
    }

    @Override
    public void run() {
        while (running) {
            // логика потока
            try {
                Thread.sleep(1000);
            } catch (InterruptedException e) {
                Thread.currentThread().interrupt();
            }
        }
    }
}

Такой подход позволяет абстрагировать управление потоками и использовать разные реализации через единый интерфейс.