Перейти к контенту

Рефакторинг: _g.script


Рекомендуемые сообщения

sys_ini = system_ini() -- файлы в винде вообще открываются ОЧЕНЬ медленно. А сам сталкер еще и что-то с ними делает, тоже мееедленно, и печально.

Тут ошибка. Сталкер загружает конфиги однократно, более их не выгружает, соответственно любые манипуляции с конфигами в скриптах не приводят к открытию каких-либо файлов. Более того, функция system_ini() есть возврат указателя CInifile *pSettings, что опять же не только не приводит ни к каким файловым действиям, но и с точки зрения производительности не стоит практически ничего.

Т.е., код сам по себе как код, только разницы никакой - что так, что получать system_ini в произвольном месте в скриптах. Тут скорее вопрос стиля кодирования и здесь я целиком за.

Изменено пользователем KD87
  • Нравится 1
  • Согласен 1

Поделиться этим сообщением


Ссылка на сообщение

Ну сам же писал - в LUA функции не инлайнятся :) Вызов функции все же вызов функции. Видимо, это влияет.

Поделиться этим сообщением


Ссылка на сообщение

 

 

А вот с просто файлом, не system.ltx - форменный кошмар

А он как раз грузится с диска, т.к. не закеширован при загрузке.

Поделиться этим сообщением


Ссылка на сообщение

@Карлан, если заинклудить туда, то файл будет загружен только раз и время, затрачиваемое на его загрузку перенесется на старт игры. Но! Обращение к секциям в файле должно будет идти через system_ini(), никаких ini_file(). Вызов ini_file() ведет к чтению файла с диска в любом случае, насколько я понимаю.

Поделиться этим сообщением


Ссылка на сообщение
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...