CollectionFind::lockShared

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

CollectionFind::lockSharedSHARED 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();

// ... read the object in shared mode

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

User Contributed Notes

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