Обычно я оставляю стек Lua беспорядочным с 6 оставшимися записями после того, как функция, которую я определил, была запущена.
В некоторых случаях это приводило к серьезным утечкам памяти/переполнениям стека! Я решил их, используя lua_settop( L, 0 ) в конце моей функции.
В других случаях утечек не было, хотя стек не был пуст в конце моей функции.
- Когда мне нужно очистить стек Lua?
- Как могло случиться, что в стеке одновременно было около 10 000 элементов? (В функции вообще не использовались циклы)