Диалоговое окно должно поддерживать логику песочных часов. Рабочий поток должен отправить сообщение самому диалоговому окну, сообщив ему о необходимости начать поддерживать поток песочных часов. (Вы можете проверить это, добавив временную кнопку в диалоговое окно, которое запускает и останавливает песочные часы.)
Еще одна вещь, о которой следует знать, это то, что второй процесс устанавливает песочные часы первого - странная вещь. Песочные часы должны происходить только из-за действий пользователя. Когда песочные часы включены, обычно единственное действие, которое должно быть доступно пользователю, это «Отмена [какая бы операция не держала песочные часы вверх]».