История изменений
Исправление LightDiver, (текущая версия) :
Это уже херня. В случае выше производительность была максимальная из за использования массивов и хэш таблиц. Мгновенно на дестках тысяч элементов. Но тот вариант уже отвалился.
В wow 3.3.5 очень ограниченное количество элементов на общую таблицу. Превышаешь - ошибка и обнуленией всей таблицы.
Теперь я жертвую производительностью и удобством в пользу надежности хранения. Буду хранить данные в строках. И тут уже экономия памяти идет побоку в том варианте, что я описывал, увы.
Придется делать что то такое:
таблица = {
"объект объект2 объект3",
"12 1 999"
}
И парсить строку по номеру объекта. И пересобирать. Это очень затратно. Есть идеи как сделать лучше?
А про память. Это опять же wow 3.3.5 - 32битный клиент. У меня УЖЕ обычными аддонами занято 100мб озу, 700-1000 на остальное. Логи чата 50-100мб итд итп. Структуры засирают память еще быстрее. По 40байт на таблицу, 17 байт на строку, 8 байт на инт.
А еще это все у меня крутится на моем клиенте и при наращивании люто начинает тормозить.
Исправление LightDiver, :
Это уже херня. В случае выше производительность была максимальная из за использования массивов и хэш таблиц. Мгновенно на дестках тысяч элементов. Но тот вариант уже отвалился.
В wow 3.3.5 очень ограниченное количество элементов на общую таблицу. Превышаешь - ошибка и обнуленией всей таблицы.
Теперь я жертвую производительностью и удобством в пользу надежности хранения. Буду хранить данные в строках. И тут уже экономия памяти идет побоку в том варианте, что я описывал, увы.
Придется делать что то такое:
таблица = {
"объект объект2 объект3",
"12 1 999"
}
И парсить строку по номеру объекта. И пересобирать. Это очень затратно. Есть идеи как сделать лучше?
А про память. Это опять же wow 3.3.5 - 32битный клиент. У меня УЖЕ обычными аддонами занято 100мб озу, 700-1000 на остальное. Логи чата 50-100мб итд итп. Структуры засирают память еще быстрее. По 40байт на таблицу, 17 байт на строку, 8 байт на инт.
Исходная версия LightDiver, :
Это уже херня. В случае выше производительность была максимальная из за использования массивов и хэш таблиц. Мгновенно на дестках тысяч элементов. Но тот вариант уже отвалился.
В wow 3.3.5 очень ограниченное количество элементов на общую таблицу. Превышаешь - ошибка и обнуленией всей таблицы.
Теперь я жертвую производительностью и удобством в пользу надежности хранения. Буду хранить данные в строках. И тут уже экономия памяти идет побоку в том варианте, что я описывал, увы.
Придется делать что то такое:
таблица = { «объект объект2 объект3», «12 1 999» }
И парсить строку по номеру объекта. И пересобирать. Это очень затратно. Есть идеи как сделать лучше?
А про память. Это опять же wow 3.3.5 - 32битный клиент. У меня УЖЕ обычными аддонами занято 100мб озу, 700-1000 на остальное. Логи чата 50-100мб итд итп. Структуры засирают память еще быстрее. По 40байт на таблицу, 17 байт на строку, 8 байт на инт.