Alexander
Visitor писать что-то страшно на вид.
Alexander
Всем спасибо.
Andrey
պլհկ
ух
Andrey
где почитать про
[rustc] the parameter type A may not live long enough
?
Αλεχ
4 байта же
ну а как ты иначе представишь часовой пояс?)
Alexander
Так вроде как оффсет может быть не только часовой, но и минутный, хз про секундный.
Αλεχ
https://en.wikipedia.org/wiki/UTC%E2%88%9200:25:21
Andrey
та ну. это какой-то казус. вроде есть кратные 15 минутам только
Αλεχ
это мне напоминает манеру америкосов интерпретировать символы байтами
Αλεχ
причем не когда-то там, а в 2018 году
Αλεχ
"ну у меня все в аски помещается, зачем мне думать о чем-то еще"
Αλεχ
https://habrahabr.ru/post/146109/
Andrey
тот же ISO 8601 определяет таймзоны с точностью до минуты. хватает и i16.
но так-то да, можно и в наносекундах померять.
Αλεχ
i16 хватает
Αλεχ
а теперь вспоминаем про выравнивание
Αλεχ
и получаем тот же размер
Αλεχ
так что хватит байтоёптить
Andrey
а зачем bincode тогда? :)
Αλεχ
если ты готов пожертвовать производительностью ради экономии 16 байт то пожалуйста)
Andrey
бит :)
Αλεχ
да
Αλεχ
бит
Αλεχ
http://konishchevdmitry.blogspot.co.uk/2010/01/blog-post.html - полезная статья
Денис
А что мешает сделать структуру из необходимых полей (seconds since epoch, milliseconds) и реализовать From для конвертации в Chrono и обратно?
При этом я практически уверен, что хранить таймзону нет необходимости, и достаточно хранить всегда UTC
Evgεny
ничего себе бабораб, статью ей перевел
Денис
պլհկ
Денис
պլհկ
*локальных* может быть много
Αλεχ
Αλεχ
невыровненные данные это зло почище goto
Αλεχ
лучше уж просрать хоть мегабайт памяти
Денис
какая разница
Разница в том, что на миллион записей ты получаешь два мегабайта оверхеда xD
Αλεχ
но иметь выровненный доступ ко всем структурам в программе
Αλεχ
ты предпочтешь х2 просадку по производительности?
Αλεχ
хотя в статье приводят пример с разницей в 100 раз
Денис
*локальных* может быть много
Локальная тз таки одна :) я понимаю, что есть случаи, когда важно знать, в какой именно зоне был создан таймстамп, но по-моему это скорее редкость
պլհկ
ну я предполагаю что если человек хочет сохранить таймзону - он знает зачем это делает
Денис
ну ок, согласен
Anton
Alexander
ну ок, согласен
Ну если честно пока что просто потому что chrone ее в себе содержит. 8мб не думаю что влияют в сравнении со строками.
Αλεχ
еще одно поле добавляет минимум 4(8)
Αλεχ
так что разницы никакой
Αλεχ
и не надо мозги себе делать)
պլհկ
в хроно можно и naivedatetime юзать, если на таймзоны пофиг
Andrey
хехе. речь же не о size_of, а о размере сериализованных данных
Денис
Alexander
Денис
Andrey
ну потому что DateTime сделан обёрткой над NaiveDateTime
Денис
А зачем вникать, надо набрасывать :)
Αλεχ
Αλεχ
короче, когдав место хрени начнете делом заниматься - говорите
Αλεχ
сэкономили мегабайт блин на миллионе структур)
Alexander
ЛОЛ
Ну просто если есть абстракции - то мне кажется правильнее их использовать - пусть сериализатор/де хранит и читает байты и забыть от этом навсегда. А не заморачиваться ручным складыванием байтов и тайм-стемпов.
Αλεχ
dis
պլհկ
удивительно, но не все либы заточены под ХАЙ ПЕРФОРМАНС
Денис
Alexander
Денис
պլհկ
ну это ж не серьезно
Anton
Он слишком хай-левельный получился, поэтому и пишут на нём хай-левельно)
պլհկ
раст кор тим не может бегать по всем крейтам и чинить им там тормоза
Αλεχ
конечно, так исторически сложилось, но факт забавный
Αλεχ
Anton
А как же зирокост все дела?
Денис
Просто тот же си вроде как заточен под просто топ хай-перформанс, но далеко не все либы его обеспечивают
Alexander
Так вам.
Alexander
Αλεχ
Αλεχ
твой код работает быстро
պլհկ
если ты его напишешь нормально :-)
պլհկ
как и везде