您的位置:首页 > Web前端 > Node.js

用nodej和glub-watcher写的监听go 项目自动编译,很鸡肋

2015-11-20 00:30 926 查看
glub 一般都是很轻量的编译。

go太重了,改一小个部分,就编译的话,多数是编译失败。

而且很消耗性能,还没想到完美的优化办法。

暂时用个定时器 监听2秒,停止1秒,如此循环,会减少些 “无效”的编译

var watch = require('glob-watcher');
var exec = require('child_process').exec;
var sys = require('sys');
var matchregs=new Array(9);
var godirpath = process.env.GODIR;
var command = process.env.COMMAND;
for (var i=0;i<10;i++){
var perkey="";
var tokay="";
for(var j=0;j<=i;j++){
perkey+="*";
tokay=perkey+"/"+tokay
}
matchregs[i]=godirpath+"/"+tokay.substring(0,tokay.length-1);
}

// var t=setTimeOut(function(){
// console.log(matchregs)
function startwatch(){
var w=watch(matchregs, function(evt){
console.log("1")
child = exec(command, function(error, stdout, stderr) {
sys.print('error: \n' + error+"\n");
sys.print('stdout: \n' + stdout+"\n");
sys.print('stderr: \n' + stderr+"\n");
})
setTimeout(function(){
w.end();
setTimeout(function(){
startwatch();
},1000)
},2000)
})
}

startwatch()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: