【发布时间】:2011-10-14 02:38:33
【问题描述】:
目前,这是我使用 node-mysql 执行查询的方式
client.query( sql, function( error, result ) {
console.dir( result );
});
我想同步地做这个,像这样
var result = client.querySync( sql );
console.dir( result );
我明白为什么阻塞在节点中是不好的,但我(几乎)已经长大了,知道什么时候可以,什么时候不行。我只打算在初始化阶段进行同步调用,在任何事件循环之外。
请问有谁知道我是怎么做到的?
编辑...
类似于...的东西
client.querySync = function( sql )
{
var called = false;
var result;
while ( typeof result == 'undefined' ) {
if ( ! called ) {
called = true;
this.query( sql, function( error, _result ) {
result = { error: error, result: _result };
});
};
}
return result;
};
【问题讨论】:
标签: javascript mysql node.js