static 生命周期
区分 static 生命周期与全局变量 static 装饰符
全局变量, 要用 static
修饰, 有两个特点:
- 每个静态变量都要被初始化
- 可变静态变量不是线程安全的, 如果要直接访问它, 需要放在
unsafe {}
内部
#![allow(unused)] fn main() { static mut STASH: &i32 = &10; static WORTH_POINTING_AT: i32 = 42; }
全局变量, 要用 static
修饰, 有两个特点:
unsafe {}
内部#![allow(unused)] fn main() { static mut STASH: &i32 = &10; static WORTH_POINTING_AT: i32 = 42; }