从垃圾回收机制到控制机制的转换研究
在分布式系统中,代理(agent)的迁移和管理是一个重要的问题,尤其是在涉及到依赖对象(dependency objects)的情况下。为了实现对代理的有效控制,我们需要研究不同的引用计数转换方法,以满足诸如孤儿检测(orphan detection)和定位代理(locating agents)等控制功能的需求。
1. 本地引用计数(Local Reference Counting)
本地引用计数是一种在代理迁移时无需与依赖对象进行接触的方法。当代理从源位置 S 迁移到目标位置 T 时,会执行以下步骤:
1. 在源位置 S 为代理包含的每个 γ - 引用创建一个本地引用计数器。
2. γ - 引用保留在 S 处,同时将其副本随代理发送到目标位置 T。
3. 代理到达目标位置 T 后,持有以源位置 S 为父节点的 γ - 引用。
4. 移除源位置 S 上的本地 γ - 引用,并减少该位置的本地引用计数器的值。
以下是相关代码示例:
LPS:
[state == alive, unBalanced == 0, all weightγ are divisible]
for all γ - references in dependencySet
{
weightγ = weightγ / 2;
Send (γ, <decrement γ, weightγ>);
}
exitPlace();
APT:
[state == alive]
enterPlace();
<
超级会员免费看
订阅专栏 解锁全文
174万+

被折叠的 条评论
为什么被折叠?



