Насколько я понимаю, когда вы убиваете приложение C ++ с помощью диспетчера задач в Windows XP, приложение по-прежнему «чисто» уничтожается - то есть стек вызовов раскручивается и все соответствующие деструкторы объектов будут вызываться. Не уверен, что мое понимание здесь неверно.
Можно ли убить такое приложение сразу, не раскручивая стек?
Например, приложение может использовать шаблоны RAII, которые будут уничтожать или освобождать ресурсы при разрушении объекта. Если традиционный «процесс уничтожения» с помощью диспетчера задач изящен, предоставление способа немедленного уничтожения приложения позволит мне протестировать некорректное завершение работы (например, отключение питания).
Edit:
Просто чтобы уточнить, я хотел найти существующую утилиту или программу, которая позволяла бы мне это делать. Я должен иметь возможность использовать решение в программах, для которых у меня нет исходного кода, а это означает, что программное решение не совсем приемлемо.
Edit:
Просто чтобы предоставить больше контекста, иногда мне приходится работать со сторонними сервисами, которые очень навязчивы (например, заставляют меня перезагружаться каждый час). Поскольку я знаю, что не требуется для перезагрузки, я хочу убить процесс / службу, чтобы она меня больше не раздражала. К сожалению, некоторые сторонние разработчики были достаточно «умны», чтобы помешать мне сделать это, и когда я завершу процесс через диспетчер задач, система сразу перезагрузится (я предполагаю, что для этого используют RAII).