这可能是一个非常愚蠢的问题,但我只是想知道您是否为MySQL设置了自动提交功能,然后尝试获取锁,是否必须在获得锁之后再提交才能保留锁?
$mysqli->autocommit(FALSE);
$q = 'SELECT GET_LOCK("lockName", 10)';
$res = $mysqli->query($q);
list($acquiredLock) = $res->fetch_row();
if($acquiredLock) {
$mysqli->commit();
}
谢谢您的帮助。
答案 0 :(得分:0)
不。如果GET_LOCK
返回1(成功),则表明会话已获得锁定。
该会话将继续独立于COMMIT
或ROLLBACK
来保持锁定。