|
|
1
1
为了能够调整数组的大小,同时保持无锁进程保证,您将需要使用操作描述符。一旦开始调整大小,添加一个描述符,它包含对旧数组和新数组的引用。 在任何操作(添加、搜索或删除)中:
现在的问题是,您将有一个线程来验证移动是否完成,这样您就可以删除描述符并释放旧数组。为了维护锁自由度,您需要让所有活动线程都尝试执行此验证,因此这将变得非常昂贵。
|
|
|
ron burgundy · 获取-释放语义是否跨线程传递?[副本] 1 年前 |
|
|
H3007 · 并发运行python子进程似乎不是并发的 1 年前 |
|
|
The Oddler · TVar会阻止读取直到更改吗? 1 年前 |
|
|
Wang Tuma · 使用信号量的c++并发问题:按顺序打印 1 年前 |
|
|
Marcel Batista · 在不同线程中更新密钥时的字典线程安全 2 年前 |
|
|
rico · 当volatile关键字真的是必要的? 2 年前 |