Articles of v8

在create-react-app项目中增加JavaScript堆大小

节点通过传入–max-old-space-size命令行标志来增加堆大小。 在create-react-app项目中,一切都取决于使用react-scripts。 如何在这样的项目中传递这个参数,我应该在哪里做最好的? 谢谢你的帮助。

节点应用程序随着时间的推移逐步进食

我刚刚在DigitalOcean上推出了两个Express服务器以及一个mongodb实例。 我正在使用PM2来保持它们的运行。 当我使用htop查看内存使用情况时,总使用量通常在220-235mb左右(总共488mb)。 我能看到的唯一变化就是蓝色条,我假设它是缓冲区内存,使用中的实际绿色内存似乎总是相同的。 然而我看DO的图表,在过去的24小时内,内存graphics一直在缓慢攀升,比如说每小时总量的0.5%,有时会下降,但是总体上是在上升,目前一直在60左右,几个小时内总内存的65%。 这些节点networking服务器上几乎没有stream量,但是内存不断增加。 所以我的问题是,这可能是我的服务器之一的内存泄漏,还是增加扩展其内存的V8引擎的本质?

在Excel生成文件崩溃之前,Nodejs V8 GC正在通知

我在我的应用程序中使用xlsx图表节点模块。 该模块使用内存从您的数据点生成Excel图表。 有时当我有太多的数据点我的节点js应用程序崩溃,如下所示: <— Last few GCs —> [6420:000000CD560122F0] 77691 ms: Mark-sweep 2047.4 (2086.4) -> 2047.4 (2086.4) MB, 1235.2 / 0.1 ms allocation failure GC in old space requested [6420:000000CD560122F0] 79246 ms: Mark-sweep 2047.4 (2086.4) -> 2047.4 (2086.4) MB, 1141.2 / 0.0 ms last resort [6420:000000CD560122F0] 80808 ms: Mark-sweep 2047.4 (2086.4) -> 2047.4 (2086.4) MB, […]

NodeJS eclipse V8 deb

试图按照https://github.com/joyent/node/wiki/Using-Eclipse-as-Node-Applications-Debugger eclipse设置,项目在工作区,但是当我运行debuggingconfiguration: 无法连接到独立V8 VM超时等待握手 另外,我有多个.js文件。 Eclipse V8插件如何知道哪一个是Node的服务器脚本?

Google的v8引擎与C + + 11

可以V8(Google的开源JavaScript引擎)与C ++ 11一起使用吗?

v8:对象数组

我正在为NodeJS中的v8转换parsing器。 目前我有以下结构 struct Node { short tag; std::string data; Node(std::string input, short tagId) { tag = tagId; data = input; } }; std::vector<Node> elems; 而我正在像这样从循环中填充vector: elems.push_back(Node(STRING, 3)); 我的目标是返回一个像这样的javascript对象: [ { tag: 2, data: "asdsad" }, { tag: 2, data: "asdsad" }, { tag: 2, data: "asdsad" } ] 但是,由于V8文档是蹩脚的,我无法弄清楚如何做到这一点。 我最好的select是制作 Local<Value> data[2] = { Local<Value>::New(Integer::New(2)), […]

将v8对象转换为自定义的C ++对象

我目前正在开发一个nodejs模块,用C ++编写,我一直在寻找一种方法来将v8::Object从opencv转换成cv::Mat对象,现在没有任何运气。 我看到南图书馆可以帮助转换对象,但我不知道如何,我甚至不知道是否有可能在我的情况下转换它们。 v8果汁项目将满足我的期望,但由于它已被放弃,我只是不知道如何做到这一点。 这是我想要做的一个片段: void BRMatcher::run(const v8::FunctionCallbackInfo<v8::Value>& args) { v8::Isolate* isolate = v8::Isolate::GetCurrent(); v8::HandleScope scope(isolate); if (args.Length() < 1) { isolate->ThrowException(v8::Exception::TypeError(v8::String::NewFromUtf8(isolate, "Missing parameter [Mat img]."))); return ; } if (!args[0]->IsObject()) { isolate->ThrowException(v8::Exception::TypeError(v8::String::NewFromUtf8(isolate, "Parameter [Mat img] must be an object."))); return ; } v8::Local<v8::Object> cvMat(args[0]->ToObject()); Mat img = ??? // This is where I ended […]

将对象传递给节点的Error类将返回一个不可访问的对象

我返回一个Error对象,我传递一个对象(而不是一个简单的消息): if (err) { return myCallback(new Error({ error_code: 'sample_machine_readable_code', error_message: 'There is an error in the response from the service.', error: err })); } 而在控制台的结果是[Error: [object Object]] 。 我试图作为一个数组的属性和对象来访问它的属性,但总是以undefined结束。 JSON.stringify它返回一个空对象{} 。 通过“访问”我的意思是试图logging错误,fe与console.log(err); (最后在[object Object] )或err.message或err.Error ,或者err['Error'] ,但这些都是undefined 。 我正在通过Node的错误类文档阅读,似乎可以传递对象。 我错了吗? 我应该只返回一个简单的自定义构造的对象,而不是一个new Error ? 像那样: if (err) { return myCallback({ error_code: 'sample_machine_readable_code', error_message: 'There is an […]

我需要定义什么方法来实现nodejs / v8中的检查function

我有一个C ++类集成到NodeJS,我想改变它的默认对象打印 例: var X = new mypkg.Thing() ; console.log( X ) ; // prints the object in std way console.log( X.toString() ) ; // prints Diddle aye day console.log( '' + X ) ; // prints Diddle aye day 我已经在外部代码中定义了ToString,这是有效的。 但是我想要默认打印是一样的。 void WrappedThing::ToString( const v8::FunctionCallbackInfo<v8::Value>& args ) { Isolate* isolate = args.GetIsolate(); args.GetReturnValue().Set( String::NewFromUtf8( […]

Node.js堆栈跟踪不包括用户代码

在debuggingNode.js代码时,我经常遇到不包含我的程序代码的调用堆栈,只有node_modules /非用户代码,尽pipe当前的执行行在我的代码中。 这违背了调用堆栈的目的,通过我的应用程序代码来查看执行path。 为什么我的源文件没有显示在调用堆栈中?