У меня есть приложение, которое позволяет пользователям писать свой собственный код на собственном языке, похожем на C ++. Однако у нас возникают проблемы, когда иногда наши пользователи случайно записывают бесконечный цикл в свой скрипт. Как только скрипт попадает в бесконечный цикл, единственный выход, который они могут получить, - это закрыть приложение и перезапустить, что может привести к потере работы. Я хотел бы добавить некоторые средства, где пользователь, когда он понимает, что его код находится в бесконечном цикле, может нажать специальную клавишу, например, F10 или что-то еще, и код выйдет из цикла. Но я хотел бы сделать это, не применяя тонну проверок во время выполнения скрипта. Оптимально, я хотел бы иметь отдельный поток «отладчик», который в основном бездействует, но в качестве одной из своих задач он прослушивает этот ключ F10, а когда он получает ключ F10, он заставит поток времени выполнения сценария генерировать исключение , чтобы он прекратил выполнение скрипта. Итак, мой вопрос, есть ли способ заставить один поток вызвать другой поток исключения? Мое приложение написано на C ++.