略微加速

PHP官方手册 - 互联网笔记

PHP - Manual: CollectionFind::lockExclusive

2024-11-15

CollectionFind::lockExclusive

(No version information available, might only be in Git)

CollectionFind::lockExclusiveExecute operation with EXCLUSIVE LOCK

说明

public mysql_xdevapi\CollectionFind::lockExclusive(int $lock_waiting_option = ?): mysql_xdevapi\CollectionFind

Lock exclusively the document, other transactions are blocked from updating the document until the document is locked While the document is locked, other transactions are blocked from updating those docs, from doing SELECT ... LOCK IN SHARE MODE, or from reading the data in certain transaction isolation levels. Consistent reads ignore any locks set on the records that exist in the read view.

This feature is directly useful with the modify() command, to avoid concurrency problems. Basically, it serializes access to a row through row locking

参数

lock_waiting_option

Optional waiting option. By default it is MYSQLX_LOCK_DEFAULT. Valid values are these constants:

  • MYSQLX_LOCK_DEFAULT

  • MYSQLX_LOCK_NOWAIT

  • MYSQLX_LOCK_SKIP_LOCKED

返回值

Returns a CollectionFind object that can be used for further processing

范例

示例 #1 mysql_xdevapi\CollectionFind::lockExclusive() example

<?php
$session 
mysql_xdevapi\getSession("mysqlx://user:password@localhost");

$schema     $session->getSchema("addressbook");
$collection $schema->createCollection("people");

$session->startTransaction();

$result $collection
  
->find("age > 50")
  ->
lockExclusive()
  ->
execute();

// ... do an operation on the object

// Complete the transaction and unlock the document
$session->commit();
?>
add a noteadd a note

User Contributed Notes

There are no user contributed notes for this page.

官方地址:https://www.php.net/manual/en/mysql-xdevapi-collectionfind.lockexclusive.php

北京半月雨文化科技有限公司.版权所有 京ICP备12026184号-3