Kan*_*rat 5 mysql synchronous node.js
有什么方法可以同步执行mysql查询吗?就像是
getUser:function(user_id){
return mysql_connection.query("select ... ");
},
Run Code Online (Sandbox Code Playgroud)
像这样使用它
var user = getUser(id);
Run Code Online (Sandbox Code Playgroud)
一般来说,答案是否定的,除非您使用与 libmysqlclient (或类似的)的绑定来公开此类同步接口。
您希望避免此类同步接口,因为它们本质上会阻止您在执行同步函数时执行任何其他操作。例如,如果您有一台服务器正在运行,则意味着您无法为其他客户端提供服务。它们都至少必须等待您的同步函数完成。
不过,处理异步任务的方法有很多,包括“手动”回调(显然)、基于回调的帮助程序库,如async
Promises、生成器、async/await 等。其中一些甚至会产生同步 API 的错觉,而无需实际上是同步的。
归档时间: |
|
查看次数: |
2642 次 |
最近记录: |