CollectionFind::lockShared

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

CollectionFind::lockSharedВыполняет операцию с SHARED LOCK

Описание

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

Разрешает разделять документы между несколькими транзакциями, которые блокируются в режиме совместного доступа.

Другие сеансы могут читать строки, но не могут изменять их, пока ваша транзакция не будет зафиксирована.

Если какая-то из этих строк была изменена другой транзакцией, которая ещё не зафиксирована, запрос подождёт завершения этой транзакции, а затем использует зафиксированные значения.

Список параметров

lock_waiting_option

Дополнительная опция ожидания. По умолчанию имеет значение MYSQLX_LOCK_DEFAULT. Допустимые значения представлены константами:

  • MYSQLX_LOCK_DEFAULT

  • MYSQLX_LOCK_NOWAIT

  • MYSQLX_LOCK_SKIP_LOCKED

Возвращаемые значения

Возвращает объект класса CollectionFind, с которым можно будет работать далее.

Примеры

Пример #1 Пример использования метода mysql_xdevapi\CollectionFind::lockShared()

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

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

$session->startTransaction();

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

// ... читаем объект в режиме совместного доступа

// Завершаем транзакцию и разблокируем документ
$session->commit();
?>
add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top