gpt4 book ai didi

javascript - Windows 上的 HandleScope 构造函数中的 v8 中的 SegFault

转载 作者:太空宇宙 更新时间:2023-11-04 11:54:02 30 4
gpt4 key购买 nike

我用 C++ 开发了一个嵌入了 V8 的 Windows 服务。调试版本运行良好。问题是 Release 版本根本不起作用。

我使用 VisualStudio 2010 将 V8 引擎编译成静态库文件。我将服务的调试版本与 V8 调试库链接在一起,并将服务的发布版本与 V8 发布库链接起来。

Release版本在程序的第一行给出了SegmFault,即HandleScope v8Scope;。 (我实例化了 v8 引擎的本地范围)。

不幸的是,我无法调试,因为我运行的是发布版本,而且我看不出问题是什么,因为调试版本运行正常。

我不明白为什么在尝试实例化作用域时会收到 SegmFault。

您对我如何处理这种情况有什么建议吗?

后期编辑:

使用以下代码,我意识到当前 Isolate 是 NULL。所以,现在我的问题是如何创建一个非 NULL 的 Isolate 上下文。

Isolate* isolate = Isolate::GetCurrent();
if (isolate==NULL)
return;
Locker v8Locker;
HandleScope v8Scope(isolate);

谢谢,

最佳答案

如果有人有同样的问题,这里是答案:

由于某些原因,V8 引擎似乎没有调用自己的初始化函数。因此,如果您将 V8::initialize(); 行作为程序的第一行,就可以了。

要创建一个非 NULL 的新 Isolate,您必须调用 Isolate *isolate=Isolate::New()

关于javascript - Windows 上的 HandleScope 构造函数中的 v8 中的 SegFault,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16924087/

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