静态保证
Rust 的类型系统可以防止在编译时发生数据竞争(参考Send
和Sync
traits). 类型系统还可以用来检查编译时的其他属性; 减少了对运行时检查的需求.
当应用于嵌入式程序时, 可以使用下面这些静态检查, 例如, 强制完成I/O的正确配置. 例如, 可以设计一种API, 在该API中只能先配置该就扣用到的引脚来初始化串口.
人们还可以静态检查操作, 像是只能通过正确配置的外设来让一个引脚为低. 例如, 改变浮动输入模式的引脚的输出状态会产生编译错误.
而且, 像上一章说的, 所有权的概念可以应用于外设, 以确保只有程序的某些部分才能修改外设. 与将外设设置为全局变量的方法相比, 这种访问控制的方法使应用更容易理解.