【rust】【lazy_static】
lazy_static
https://zhuanlan.zhihu.com/p/52705020
https://segmentfault.com/a/1190000019897166?utm_source=tag-newest
干什么
(全局)静态变量
怎么用
extern crate lazy_static;
use lazy_static::lazy_static;
lazy_static! {
//支持注释
[pub] static ref NAME_1: TYPE_1 = EXPR_1;
...
[pub] static ref NAME_N: TYPE_N = EXPR_N;
}
注:ref参数: 这里 static == static ref (1)方法的定义和调用都必须显示使用ref关键字 (2)使用ref的参数必须先初始化,没有初始化会报错
一般和mutex和rwlock一起使用(为了避免数据竞争,全局变量是一个内存,多线程操作的时候,如果又有读又有写,就会有冲突)