Производительность моей программы иногда сокращается вдвое из-за того, что в Windows 7 встроена «отказоустойчивая куча». Там не так много информации о FTH, но это то, что я смог выяснить.
FTH обычно добавляется из-за ошибок кучи. Я не могу найти способ получить уведомление о том, какие ошибки вызывают его включение.
FTH внесет приложения в черный список по имени файла, поэтому даже если вы исправите ошибки, они все равно будут встраиваться в ваше приложение и, возможно, в конечном итоге исчезнут (так что да, даже пробная версия и ошибка не могут сказать вам, какая ошибка вызывает это, чтобы вставить. Случайное колебание, кажется, единственный ответ). Как эти решения принимаются, непрозрачны. Я переименовал свое приложение, и FTH исчез, и производительность вернулась к нормальной, поэтому он должен каким-то образом отслеживать имя файла.
Существует способ отключить FTH и не допустить его встраивания в мой компьютер, но нет никакой гарантии, что он не встроится в ПК пользователя, сократив его производительность вдвое.
Практически нет документации по этой функции. Лучшее, что я могу найти, это часовое видео инженера, обсуждающего его здесь: http://channel9.msdn.com/shows/Going+Deep/Silviu-Calinoiu-Inside-Windows-7-Fault-Tolerant-Heap/
Кто-нибудь знает более подробную информацию об этой функции и как изгнать ее из моего приложения?