ВОТ МЕЙН ЗАДАЧИ: public static void main(String[] args) throws InterruptedException { Politician ivanov = new Politician("Иванов"); ivanov.join(); ----------------------------------------------------------------------------тут мы ждем пока иванов выговорит всевремя Politician petrov = new Politician("Петров"); ------------------------------------------- запускается еще одна нить Politician sidorov = new Politician("Сидоров");-----------------------------------------запускается еще одна нить --------------------------------------------------------------------------------------------------------------на данный момент бегут 3 нити : мейна, петрова и сидорова while (ivanov.getSpeechCount() + petrov.getSpeechCount() + sidorov.getSpeechCount() < totalSpeechCount) { }-------------------------------------------------------------------------------------------------------этот цикл не вызывается, тк у петрова все getSpeechCount() уже 200. В это время 3 ОСТАЛЬНЫЕ НИТИ ЕЩЕ БЕГУТ, и сидоров с петровым толкают речи. System.out.println(ivanov); System.out.println(petrov); System.out.println(sidorov); -----------------------------------------------------------------------------------------------------------выводит след : 200 у иванова, 0 у сидорова и петрова... ПОЧЕМУ? эти же нити бегут пока сами не достигнут показателя 200. Если мейн вызвал метод println(...) раньш, чем они достигли 200, то должны быть выведены промежуточные результаты, но не НОЛЬ. ЛЮДИ ДОБРЫЕ, ШТА ЭТО И ПОЧЕМУ ТАК??? }