nodejs适合做数据处理吗?
发布于 13 年前 作者 ntop001 11856 次预览 最后一次回复是 8 年前 来自
其实很早就关注nodejs 和 cnodejs了但是一直没敢注册(因为这个社区里面都是大牛啊),但是却一直在关注着,做点东西都是东拼西凑,到最后尽然还 work 了~~
深入的越多,就越想做更多的事情~于是便有了下面的问题,用nodejs做数据处理~我觉得还是很勉强的。
比如我写一个for 循环:
for(int i = 0; i< 1000000; i++){
processString("hello world");
}
processString(var str){//这是一个异步的方法~
var ss = str+str+str+str;
}
这样不就会出问题吗?
for循环执行的瞬间就会产生大量的对 processString(var str)的调用,然后由于 var ss = str+str+str+str;这个操作,内存急剧扩张~ 然后程序不就挂掉了吗?
但是如果这是一个非异步线程的程序,顺序执行下来,却是一点事情都没有的~
一直没有想明白,求各位大神指教~~而且homework 也没有做够,顺便求些推荐的书和学习站点。
6 回复
Good, 估计会有人这样回复,用jscex把异步转同步,实际上我也是这么做的~但是不知道这是不是一个普遍的问题~
ls转成同步是一个办法,也可以设置一个工作池,只允许最多N个异步线程(进程)同时执行。前者可以看作后者的特殊化(N=1)。
瞬间之后木有内存释放这一说么?
这个要怎么做呢??
用nodejs 的 async /await 异步转同步 ,不过说实话,js 这个语言真的不太适合做数据处理,浮点运算很差,还是用java python 吧