开发者社区> 问答> 正文

V8 Worker中Persistent handle是什么?

V8 Worker中Persistent handle是什么?

展开
收起
Dons 2022-04-18 10:58:25 890 0
来自:阿里技术
1 条回答
写回答
取消 提交回答
  • Persistent handle 是一个堆内存上分配的 JavaScript 对象的引用,这点和 local handle 一样。但它有两个自己的特点,是对于它们所关联的引用的生命周期管理方面。当你希望持有一个对象的引用,并且超出该函数调用的时期或范围时,或者是该引用的生命周期与 C++ 的作用域不一致时,就需要使用 persistent handle 了。例如 Google Chrome 就是使用 persistent handle 引用 DOM 节点。Persistent handle 支持弱引用,即 PersistentBase::SetWeak,它可以在其引用的对象只剩下弱引用的时候,由垃圾回收器出发一个回调。

    2022-04-18 16:34:47
    赞同 展开评论 打赏
问答地址:
来源圈子
更多
收录在圈子:
+ 订阅
问答排行榜
最热
最新

相关电子书

更多
Spark on Supercomputers--A Tale of the Storage Hierarchy 立即下载
MongoShake -- Multi Active-Active and Cross-Region Disaster Recoverable MongoDB Service 立即下载
WALLess HBase with persistent memory devices 立即下载