我正在寻找一个用C编写的关键字 - >值字典库,它支持理论上无限数量的廉价交易。你知道一个支持COW事务的C字典吗?
我想在内存中有一个字典,有数百个线程开始事务,可能会修改字典,结束(完成)事务或可能中止事务。这些线程只有50%的时间会实际修改字典。
我看过的大多数字典事务实现总是复制,而不是在写入时复制,无论事务何时开始。鉴于字典的预期大小(> 1GB),我希望能够在交易过程中发生事实变化时才能找到一些COW。我也希望大多数主要的GNU/Linux发行版都包含这些东西。
任何建议或链接都非常感谢。
它的交易,让你,尤其是数百线程使用普通的快速互斥体来控制它们。我花了相当多的时间尝试一些东西。 SQLite接近我自己的堆栈配置文件(就地块说,无论如何),并提供更多的灵活性。 – 2010-03-24 12:23:26