Быстрая сериализация / десериализация таблицы (без рекурсии) в Lua - PullRequest
0 голосов
/ 30 июня 2018

Я использую Lua 5.2. Я получаю большие таблицы (одномерный массив) размером 800 000. Я хочу быстро сбросить эти таблицы. Я нашел статью в вики под названием Сохранить таблицу в файл и использовал ее, но нашел не на должном уровне. Пример таблицы, сохраненной с использованием этого метода, то есть table.save(table, filename), размещен в моем DropBox здесь . (Файл слишком велик для размещения здесь. Примерно 8 МБ)

Поскольку моей главной заботой является скорость, я готов принять двоичную сериализацию, если такая существует.

1 Ответ

0 голосов
/ 30 июня 2018

Вы связаны с Lua 5.2? 5.3 представил побитовые операторы и встроенные бинарные операции упаковки / распаковки (см. Главу 13 «Биты и байты», Программирование на Lua, 4-е издание). В главе 15 «Файлы данных и сериализация» также приведены конкретные алгоритмы и рекомендации для сериализации таблиц. Эти главы станут вашим лучшим источником информации для правильной реализации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...