lazy_static是一个非常受欢迎的板条箱。几年前,对于某些任务,它没有更好的选择。但是今天,还有什么理由选择lazy_static
而不是新的once_cell或即将推出的LazyLock吗?
如果您想支持#![no_std]
平台,您可能仍然更喜欢使用lazy_static
。根据once_cell
文档:
与
once_cell
不同,lazy_static
支持基于自旋锁的阻塞实现,它适用于#![no_std]
。
once_cell
和LazyLock
具有编译器的最低支持版本。对于它的早期版本,您可能希望坚持使用lazy_static
当可用的功能较少时,它可以很好地发挥作用。