维基百科defines a race condition as:
竞争条件或竞赛危险是电子产品,软件或其他系统的行为,其输出取决于其他不可控事件的顺序或时间。当事件没有按程序员的意图发生时,它就会成为一个错误。
Rust is a:
安全,并发,实用的语言
如果我们创建100%Rust的软件,我们可以避免竞争条件吗?为什么或者为什么不?
答案 0 :(得分:10)
否强>
我已经看到了竞争条件:
程序在数据竞争中充满活力的环境,编程语言除了拥抱它之外什么都不能做。
Rust专注于记忆安全。在多线程编程的上下文中,这意味着阻止数据竞争。
没有数据竞争的程序仍然可以包含竞争条件:
竞赛条件不是内存错误。对于Rust,这意味着它们被认为是安全,尽管它们当然仍然是不受欢迎的。它们可能发生在许多不同的层面:线程,进程,服务器......之间......