Здравствуйте, Сергей Мухин, Вы писали:
СМ>Здравствуйте, mityaj.it.0, Вы писали:
СМ>>>suspendthread MI0>>не получится, потому что обработчик события [Ctrl+C] в другом потоке получит управление после обработки исключения в основном потоке(по крайней мере MI0>>это нельзя списывать)
СМ>не понял. Мы сейчас работаем в обработчику Ctrl+C, и пытаемся передать другому thread (например главному) исключение. так?
СМ>так как мы получим управление _после_ обработки искл в главном? (т.е. получить то можем, но зачем?)
Нет.
В главном потоке строка "std::cin >> itSum" ожидает от юзера ввода целого числа, если юзер передумает и захочет выйти,
то он нажмет [Ctrl+C]. В этом случае "std::cin >> itSum" сгенерит исключение(поскольку введено не значение типа int) и винда создаст поток, в кот. передаст управление моему обработчику "ConsoleHandler".
Мне не нужно обрабатывать исключение, поскольку это не ввод числа, а запрос на выход из программы. Вопрос в том, как основному потоку в обработчике исключения понять, что был запрос на выход, а не ввод неверного числа?