我用 C++ 开发了一个嵌入了 V8 的 Windows 服务。调试版本运行良好。问题是发布版本根本不起作用。
我使用 VisualStudio 2010 将 V8 引擎编译成一个静态库文件。我将服务的调试版本与 V8 调试库链接,并将服务的发布版本与 V8 发布库链接。
发布版本在程序的第一行给出 SegmFault,即HandleScope v8Scope;
. (我为 v8 引擎实例化了本地范围)。
不幸的是,我无法调试,因为我运行的是发布版本,而且我看不出问题出在哪里,因为在调试版本中运行正常。
当我尝试实例化范围时,我不明白为什么会收到 SegmFault。
你对我如何处理这种情况有什么建议吗?
后来编辑:
使用下面的代码,我意识到当前的 Isolate 是 NULL。所以,现在我的问题是如何创建一个不为 NULL 的 Isolate 上下文。
Isolate* isolate = Isolate::GetCurrent();
if (isolate==NULL)
return;
Locker v8Locker;
HandleScope v8Scope(isolate);
谢谢,