Пока они работают в одном потоке, нет.Операция никогда не вернется к sub2 (), если в sub () есть бесконечный цикл.
Если sub2 () раскручивает поток, который запускает цикл в sub (), это все равно может оказаться невозможным.Это может быть проблема с проблемой остановки.Sub2 () может взаимодействовать с потоком, в котором находится sub (), и уничтожать его через заданное время, заданное количество итераций или какой-либо другой критерий.Если есть какое-то состояние, которое вы знаете, чтобы проверить это, то это приведет к тому, что sub2 () может искать это состояние в бесконечном цикле и уничтожать sub (), если он входит в него, но у Thread нет метода .isInInfiniteLoop ().