gpt4 book ai didi

Java JNI- GetString() 与 GetStringCritical() 相比有什么好处?

转载 作者:行者123 更新时间:2023-11-30 07:36:52 24 4
gpt4 key购买 nike

根据 JNI 文档,GetStringCritical() 在您保留由 JVM 管理的某些内存时禁用垃圾收集。如果您调用 Java 层或在调用 ReleaseStringCritical() 之前执行阻塞操作,则使用它而不是 GetString() 会使您的 native 面临死锁风险。那么 Critical 函数有什么好处,如果它是同义的,那么在您访问 JVM 托管内存时禁用垃圾回收?

最佳答案

首先更正:根据规范,GetXxxCritical() 方法可能禁用垃圾回收。

So what's the benefit of the Critical function,

使用 GetXxxCritical() 方法的优点是它们更有可能返回指向原始数据的指针,而不是数据的副本。这意味着它们可能会更快。当然,这是以记录在案的限制/警告方面为代价的。

... and is it synonymous with disabling garbage collection while you access JVM managed memory?

嗯,不;看我的更正。这些方法可能禁用垃圾收集,或者它们可能不。这将取决于您的平台如何实现 JNI 接口(interface),并可能取决于其他因素,例如 JVM 垃圾收集器选项。

关于Java JNI- GetString() 与 GetStringCritical() 相比有什么好处?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3191621/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com