我知道ETS的并发性有限,例如同时对同一行的两次写入不会发生冲突。但我似乎无法找到DETS的这类信息。有谁知道吗?
请注意,我并不是要求在Mnesia的支持下运行DETS,而且我不会询问任何特定的方案 - 比如为DETS表的每一行分配一个进程。我只是想知道DETS的有限并发保证是什么,如果有的话。
感谢。
答案 0 :(得分:1)
据我所知,DETS目前不支持并发。
来自dets
manual(我的亮点):
值得注意的是,Ets中存在的ordered_set类型尚未出现 由Dets实施,对并发的有限支持也不是 使一系列第一次和下一次呼叫安全可用的更新 修复了Ets表。 这两个功能都将由Dets实现 未来发布的Erlang / OTP。在那之前,Mnesia应用程序(或 必须使用一些用户实现的锁定方法来实现 安全并发。目前,没有Erlang / OTP库可以支持 基于订购磁盘的术语存储。