En el libro de manos en el nodo, el autor da un ejemplo de bloqueo de I \ O,no entienda a la devolución de llamada y el ejemplo de no bloqueo - Node.js
var post = db.query("select * from posts where id = 1");
doSomethingWithPost(post)
doSomethingElse();
El autor no dice nada se ejecuta hasta la línea 1 se termina la ejecución de la consulta db
Y, a continuación, se muestra no bloqueante código
callback = function(post){
doSomethingWithPost(post)
}
db.query("select * from posts where id = 1",callback);
doSomethingElse();
no es éste también el bloqueo hasta que se ejecuta la consulta?
Por lo tanto, doSomethingElse no se ejecutará hasta que se complete la consulta.
Todavía no get..say si 'consulta (String, devolución de llamada) {// implementaion para retreiving registros para la consulta dada la cadena ... hacer que el tiempo para llevar a Ejecutar ... En función de los resultados recuperados, llame a la devolución de llamada} '. Para mí esto también es un bloqueo. A menos que se consulte la base de datos, la devolución de llamada no se ejecutará ... esperaría ... ¡¡¡DERECHO !! – prvn