我正在使用帶連接池的node-mysql
驅動程序。node-mysql - 何時將連接釋放回池中
釋放連接返回到池時,只有一個查詢,很容易:
pool.getConnection(function(err, connection) {
if (err) {
throw err;
}
query = "SELECT * FROM user WHERE id = ?";
connection.query(query, [id], function(err, users) {
connection.release();
if (err) {
throw err;
}
// ...
});
});
如果我需要用第二次的連接?我必須將release()
下移幾行。但是如果錯誤被拋出會發生什麼?連接是否永遠不會返回到池中?
我是否必須使用一些控制流程庫lib才能釋放它的「最終」時刻?
有什麼更好的想法?
嗯。真的很好的問題!讓我思考。在每個錯誤回調中處理版本? – Zlatko
@Zlatko這是我的想法,因爲當錯誤觸發 –