开发者社区 问答 正文

在访问 global 对象属性时,如何通过 HYJSGlobalIC 来检查缓存是否有效?

在访问 global 对象属性时,如何通过 HYJSGlobalIC 来检查缓存是否有效?

展开
收起
萝卜丝丸子 2024-07-22 21:50:19 49 发布于江西 分享
分享
版权
举报
1 条回答
写回答
取消 提交回答
  • 在访问 global 对象属性时,首先会根据 cache_index 从 inline cache 中取出对应的 HYJSGlobalIC 结构体。然后,比较该结构体中的 prop 字段(即属性 atom)与当前需要访问的属性的 atom 是否相同。如果相同,说明缓存仍然有效,此时可以直接使用 offset 字段从 global 对象的属性数组中取出属性值。如果不同,则说明缓存无效,需要走慢路径来遍历属性数组并更新 inline cache。

    2024-07-22 22:37:01 举报
    赞同 评论

    评论

    全部评论 (0)

    登录后可评论