如何解决g1 gc 写屏障:异或和移位
我正在阅读论文 Garbage-First Garbage Collection (http://cs.williams.edu/~dbarowy/cs334s18/assets/p37-detlefs.pdf),在第 2.2 节中提到了写屏障。为了过滤出来自同一区域的对象,它有以下代码,当rTmp
为0时表示rX
和rY
包含来自同一区域的指针
rTmp := rX XOR rY
rTmp := rTmp >> logofheapRegionSize
但是如果假设logofheapRegionSize为4(bin=100),rX开始地址(bin 0),rY开始地址(bin 111),显然它们不在同一个区域,但应用上面的代码,我们有
111 XOR 000 = 111
111 >> 4 = 0
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。