Task1
MyHandlerThread - неудачная реализация HandlerThread. Нужно это исправить. Основная идея этого класса - изолированный поток, который выполняет некие вычисления. Пример использования такой:
val handlerThread = MyHandlerThread() handlerThread.doWork()
Можете вызвать метод start() где-то внутри HandlerThread.
Task2
Реализовать "считалочку". (По аналогии с детскими играми.) Есть 2 побочных потока, которые совместно считают до 100(или до заданного значения). Каждый поток, получая значение, прибавляет к нему рандомное число от 1 до 5. Далее сравнивает его с "целью"(100) и если цель не достигнута, то отправляет результат в другой поток. Если достигнута, то он объявляет себя победителем и завершается. Второй поток тоже должен узнать об этом и завершиться или кто-то должен его завершить. Имя победившего потока должно отобразиться на экране в текстовом поле.