async.parallel([
function(callback){
// Инициализируем виджет
callback(null, 'one');
},
function(callback){
// Получаем данные
callback(null, 'two');
}
],
// Вызовется когда оба действия будут выполнены
function(err, results){
// Делаем что нибудь
});
var globalState = 0;
function onEvent1() {
++globalState;
myMethod();
}
function onEvent2() {
++globalState;
myMethod();
}
function myMethod() {
if (globalState < 2) {
return;
}
// тут главная логика...
}