gpt4 book ai didi

javascript - Graal Javascript - 线程安全

转载 作者:行者123 更新时间:2023-11-30 19:38:41 25 4
gpt4 key购买 nike

在多线程应用程序(例如每个 servlet 请求)中使用 Graal.js 的推荐方法是什么?我们像这样使用 Graal.js

jsContext = Context.newBuilder("js").allowAllAccess(true).build();
bindings = jsContext.getBindings("js");
jsContext.eval("js", jsCodeString);

我们是否应该为每个执行线程设置唯一的上下文/绑定(bind)。这可以通过上下文/绑定(bind)对池或使用线程本地来完成。这是执行此操作的正确方法吗?

最佳答案

您不应同时从多个线程访问一个Context。因此,您提出的解决方案(Context 池或线程本地 Context)是实现该目的的有效方法。

graalvm/graaljs 存储库 contains一些线程相关的例子。您可以在那里(在 ExecutorsTest 中)看到线程本地 Context 的用法。

仅供引用:有一个 blog-post关于使用 Graal JavaScript 的多线程,这可能会澄清您可能有的进一步问题。

关于javascript - Graal Javascript - 线程安全,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55661667/

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