Здравствуйте! Есть thread, который непрерывно обрабатывает данные, условно в теле run() while (active) {всякое;} . Хочу из родителя давать потоку команды на определенные действия т.е. родитель говорит dosmth(), а поток в run() выполняет это самое smth. Как это делать правильно? Я бы сделал булеву переменную smth в классе потока и её сеттер, а в теле run if (smth) {code;}, но не знаю, правильно ли это с точки зрения потокобезопасности.