PHP,MySQL GET_LOCK()已自动提交

时间:2018-12-18 19:47:38

标签: php mysql

这可能是一个非常愚蠢的问题,但我只是想知道您是否为MySQL设置了自动提交功能,然后尝试获取锁,是否必须在获得锁之后再提交才能保留锁?

$mysqli->autocommit(FALSE);

$q = 'SELECT GET_LOCK("lockName", 10)';

$res = $mysqli->query($q);

list($acquiredLock) = $res->fetch_row();


if($acquiredLock) {
  $mysqli->commit();
}

谢谢您的帮助。

1 个答案:

答案 0 :(得分:0)

不。如果GET_LOCK返回1(成功),则表明会话已获得锁定。

该会话将继续独立于COMMITROLLBACK来保持锁定。