node.js redis smembers同步

node.js redis smembers同步,node.js,redis,sync,Node.js,Redis,Sync,我想知道是否有可能实现对redis成员的同步检索 输出: start 0 10 所以看起来我需要在smembers完成它的运行时,或者在同步模式下运行smembers 如何解决此问题?为什么要使其同步? 如果您想在成员之后执行某些操作,只需在回调函数中执行即可 var callback=function(res){ retrived=retrieved.concat(res); //continue do other things }; client.smembers("of

我想知道是否有可能实现对redis成员的同步检索

输出:

start
0
10
所以看起来我需要在smembers完成它的运行时,或者在同步模式下运行smembers


如何解决此问题?

为什么要使其同步? 如果您想在
成员之后执行某些操作,只需在回调函数中执行即可

var callback=function(res){
    retrived=retrieved.concat(res);
    //continue do other things
};

client.smembers("offer", function (err, replies) {
    if(!err){
        callback(replies);
    }
})
如果要在循环后执行某些操作,可以尝试在
下划线.js的
之后执行,例如:

var times=10;

var arrayOfReplies=[]; //store all replies
var callback=function(){
    //do something with arrayOfReplies
}

var afterAll = _.after(times,callback); //afterAll's callback is a function which will be run after be called 10 times

for(var i=0;i<10;i++){   
    client.smembers("offer", function (err, replies) {
        if(!err){
            arrayOfReplies=arrayOfReplies.concat(replies);
            afterAll();
        }
    })
}
var时间=10;
var arrayOfReplies=[]//存储所有回复
var callback=function(){
//用arrayOfReplies做点什么
}
var afterAll=u.after(次,回调)//毕竟,回调函数是一个在被调用10次后运行的函数

对于(var i=0;igreat,谢谢你,但是如果我有一个异步运行循环,就像我更改的示例中那样,该怎么办?如何在所有异步运行结束时获得控制。谢谢。
var times=10;

var arrayOfReplies=[]; //store all replies
var callback=function(){
    //do something with arrayOfReplies
}

var afterAll = _.after(times,callback); //afterAll's callback is a function which will be run after be called 10 times

for(var i=0;i<10;i++){   
    client.smembers("offer", function (err, replies) {
        if(!err){
            arrayOfReplies=arrayOfReplies.concat(replies);
            afterAll();
        }
    })
}