问:
例如collections里的那些数据结构, 哪些是线程安全的..我去官方的标准库文档似乎没找到说明.
答:
alexlee85 2020-10-23 17:24
因为所有权的检查你已经不能跨线程访问同一个数据结构了。如果要跨线程就必须使用Arc(Atomic Reference Count)和Mutex
不信你可以试试不用Arc和Mutex在两个线程之间来共享变量,编译器会报错。
作者 eric642 2020-10-23 17:36
感谢!你提醒完我才想起来之前看的书有说过这事儿, 刚才脑子没转过弯来~~~~
whfuyn 2020-10-23 17:44
只要看它是不是的就行。一个数据结构是的,也就是说它能够在线程间安全地传递引用,从而能在不同的线程中安全地调用它的方法,也即线程安全。
作者 eric642 2020-10-23 17:51
是指实现了这个Sync这个trait吗? impl Sync for Mutex
whfuyn 2020-10-23 17:54
是的
Neutron3529 2020-10-23 20:02
只要编译通过就是安全的
——大概如此
领取专属 10元无门槛券
私享最新 技术干货