Я хотел бы иметь окно с простой формой (переключатели и т. Д.). Пользователи могут сделать там выбор и нажать кнопку «Отправить». В дополнение к этому я хотел бы установить некоторые временные ограничения. Более подробно, пользователь должен видеть, сколько секунд он / она еще имеет (поэтому должен быть таймер). Если ограничение по времени превышено, программа закроет окно и отправит выбор «по умолчанию».
Насколько я понимаю, мне нужно создать 2 потока для этого. Один из них будет отслеживать активность пользователя в окне (какой переключатель выбран и т. Д.).
Другой поток должен создать таймер, который каждую секунду проверяет оставшееся время и каким-то образом помещает эту информацию в окно.
Более того, эти два потока должны иметь возможность убивать друг друга. Например, если нажата кнопка «Отправить», первый поток убивает таймер. Или, если время превышено, второй поток (таймер) завершает работу первого процесса.
Это хорошая архитектура? Мне нужно ваше мнение, потому что я делаю такие вещи впервые.