节点版本是 v0.11.13
崩溃期间的内存使用情况根据sudo top
不提高3%
重现此错误的代码:
var request = require('request')
var nodedump = require('nodedump')
request.get("http://pubapi.cryptsy.com/api.php?method=marketdatav2",function(err,res)
{
var data
console.log( "Data received." );
data = JSON.parse(res.body)
console.log( "Data parsed." );
data = nodedump.dump(data)
console.log( "Data dumped." );
console.log( data )
})
Run Code Online (Sandbox Code Playgroud)
要检查递归堆栈大小问题是否已使用--stack-size = 60000参数运行下一个代码
var depth = 0;
(function recurse() {
// log at every 500 calls
(++depth % 500) || console.log(depth);
recurse();
})();
Run Code Online (Sandbox Code Playgroud)
并且有
264500
Segmentation fault
Run Code Online (Sandbox Code Playgroud)
然后我运行了代码,它给了我致命的错误:CALL_AND_RETRY_LAST分配失败 - 使用相同的--stack-size = 60000参数处理内存不足但没有得到Segmentation fault
.
所以我总结CALL_AND_RETRY_LAST
一下,递归堆栈大小并不常见. …
它想从我这里得到什么?如何让它发挥作用?
var proxy_handler =
{
ownKeys: function(target)
{
return Object.keys(target.data)
},
}
var proxxxy = function(initial_data)
{
var return_value = "Goodbye world"
var target = function() { return return_value }
if(typeof initial_data == "undefined")
{
target.data = {}
}
else
{
target.data = initial_data
}
return new Proxy(target, proxy_handler)
}
var p = proxxxy({q:"aaa",w:"bbb",f:"ccc"})
console.log(p())
console.log(Object.getOwnPropertyNames(p))
Run Code Online (Sandbox Code Playgroud)
它打印一个错误,但不应该:
me@me:~/tst$ node --version
v6.2.2
me@me:~/tst$ node test3.js
Goodbye world
/home/me/tst/test3.js:26
console.log(Object.getOwnPropertyNames(p))
^
TypeError: 'ownKeys' on proxy: trap result did not include 'arguments'
at …
Run Code Online (Sandbox Code Playgroud) 我的服务器上有一个名为test.sh
:
#!/bin/bash
read -p "Select an option [1-4]: " option
echo "You have selected $option"
Run Code Online (Sandbox Code Playgroud)
当我通过 ssh 手动运行它时,我看到:
me@me:~$ ssh root@server
root@server's password:
[...]
root@server:~# bash test.sh
Select an option [1-4]: 48
You have selected 48
Run Code Online (Sandbox Code Playgroud)
当我作为 ssh 远程命令运行它时,我看到以下内容:
me@me:~$ ssh root@server 'bash test.sh'
root@server's password:
48
You have selected 48
Run Code Online (Sandbox Code Playgroud)
我对此输出不满意,因为它缺少Select an option [1-4]:
提示字符串和我从中派生的原始脚本test.sh
包含很多这样的交互式对话字符串,我需要它们全部。
我知道会read
打印它的提示,stderr
因此我尝试使用以下命令启动脚本,以防省略 stderr,但输出仍保持不变:
ssh root@server 'bash test.sh >&2'
ssh root@server 'bash test.sh' >&2
ssh root@server 'bash …
Run Code Online (Sandbox Code Playgroud) 使用setTimeout这个javascript程序的nim等价物是什么?请不要破解sleep(1000)并保持代码异步.
setTimeout(
function()
{
console.log("Hello world")
},
1000
)
Run Code Online (Sandbox Code Playgroud) 我有一个代码
#!/bin/bash
case "$*" in
"info" ) echo "INFO * * *";;
"copy" ) echo `$0 info`;;
esac
Run Code Online (Sandbox Code Playgroud)
打印这个
$ ./print.sh info
INFO * * *
$ ./print.sh copy
INFO print.sh print.sh print.sh
Run Code Online (Sandbox Code Playgroud)
如何进行打印
$ ./print.sh info
INFO * * *
$ ./print.sh copy
INFO * * *
Run Code Online (Sandbox Code Playgroud)
保留echo
在复制案例中:
"copy" ) echo ???;;
Run Code Online (Sandbox Code Playgroud) 是否有可能使用basename
,并readlink
在同一行?就像是:
ln -s /usr/local/src symlink
echo `basename <(readlink -f "./symlink")`
Run Code Online (Sandbox Code Playgroud)
除了上面的脚本打印63
而不是src
.
bash ×4
node.js ×2
filesystems ×1
inode ×1
javascript ×1
linux ×1
momentjs ×1
nim-lang ×1
ssh ×1
v8 ×1