(Connection из rusqlite)
Допустим мне раз в какое-то время нужно менять значение Connection на другое, например подключится к другой базе.
Я в целом понимаю что сейчас все реализовано не очень, какой есть оптимальный и аутентичный способ решить мою задачу?
Насколько понимаю - по хорошему мне нужно переписать все на once_cell и вероятно добавить какой нибудь connection pool, типо r2d2, так ведь?
Ага)) Лучше это https://docs.rs/once_cell/latest/once_cell/sync/struct.Lazy.html чем lazy_static!
мх, оно позволяет мутировать состояние внутри себя?
Посмотри arc_swap, это именно для подобных целей крейт
А чем OnceCell лучше lazy_static?
Как минимум тем, что не использует макросы
макросы это ерунда, OnceCell/Lazy классный тем, что его можно запихнуть как поле структуры и единоразово его инициализировать в рантайме и в !Sync
Обсуждают сегодня