Да, я видел этот вариант, но он меня не устроил.
В комментарии можно увидеть, что автор фикса (Y_Less) утверждает, якобы нативная функция (heapspace) сохраняет текущий указатель кучи ("Call a native function that does very little, but saves the current heap pointer.").
Интересно, где он это увидел? Код функции можно посмотреть
здесь. Всё, что делает функция - возвращает разницу между значениями в указателях стека и кучи, т.е. свободное пространство в секции стека/кучи. Никакого сохранения указателей стека, кучи или фрейма стека в ней нет.
По сути оператор sleep заменяется на какую-то функцию, которая даже не производит никакой приостановки выполнения кода. С таким же успехом можно заменить sleep на функцию-пустышку.
PHP код:
stock FIX_Sleep(ms) return ms;
В чём смысл такого "фикса"? Можно ли это вообще назвать "фиксом"? Удивительно, почему этого до сих пор никто не заметил - вроде бы среди заморской аудитории много кто пользуется этим инклудом.