腐蚀性:一种事务性编程语言 源码
并发很难。 并发是指多个程序同时修改共享数据的情况。 并发程序可以跨线程,进程运行,对于分布式系统,则可以跨网络运行。 并发具有挑战性,因为它在执行顺序中引入了歧义,而正是这种歧义导致了一类失败,称为竞争条件。 只要并发程序的执行顺序影响其结果,就可能发生争用情况。 例如,假设存在两个程序A和B ,每个程序都增加一个共享计数器x 。 正式地,每个程序读取x的当前值,然后写入x + 1 。 如果B在A写之后读取,则B读x + 1并写x + 2 。 但是,如果B在A写入之前读取但在A读取之后读取,则A和B都将读取x并写入x + 1 。 这是竞争条件的一个示例,因为在A和B都完成之后计数器x的值取
下载地址
用户评论