嵌入式v8是否可以检测到错误的脚本?

时间:2019-03-21 23:31:38

标签: c++ embedded-v8

给出一些(公认的)JavaScript代码片段,例如

arr=[];for(var i=0;i<300000000;i++) { arr.push(i); }

我想抛出某种异常,使嵌入程序可以捕获并报告环境耗尽内存,而不会导致整个过程崩溃。

我曾经考虑过可能添加一个后台线程,该线程在通过RequestInterrupt运行时每隔100 ms左右检查一次隔离,并在堆使用量为Isolate时生成一个异常。太高了,尽管除非我将空间限制设置为远远低于运行时通常允许的空间限制,否则在后台线程实际检测到Isolate正在使用过多内存之前,这仍然可能使进程崩溃,因为我的检查仍然相距100毫秒。

所以我如何可靠地进行设置,以便可以检测到js环境何时使用了超过几个千兆的空间,然后生成内存不足异常,该异常可由嵌入式应用程序捕获?

0 个答案:

没有答案