class PersistentDatabaseLockBackend

Defines the persistent database lock backend. This backend is global for this Drupal installation.

Hierarchy

Related topics

Locking mechanisms
Functions to coordinate long-running operations across requests.

File

core/lib/Drupal/Core/Lock/PersistentDatabaseLockBackend.php, line 13

Namespace

Drupal\Core\Lock

Members

Name Modifiers Type Description
DatabaseLockBackend::$database protected property The database connection.
DatabaseLockBackend::acquire public function Acquires a lock. Overrides LockBackendInterface::acquire
DatabaseLockBackend::catchException protected function Act on an exception when semaphore might be stale.
DatabaseLockBackend::ensureTableExists protected function Check if the semaphore table exists and create it if not.
DatabaseLockBackend::lockMayBeAvailable public function Checks if a lock is available for acquiring. Overrides LockBackendInterface::lockMayBeAvailable
DatabaseLockBackend::release public function Releases the given lock. Overrides LockBackendInterface::release
DatabaseLockBackend::releaseAll public function Releases all locks for the given lock token identifier. Overrides LockBackendInterface::releaseAll
DatabaseLockBackend::schemaDefinition public function Defines the schema for the semaphore table.
DatabaseLockBackend::TABLE_NAME constant The database table name.
LockBackendAbstract::$lockId protected property Current page lock token identifier.
LockBackendAbstract::$locks protected property Existing locks for this page.
LockBackendAbstract::getLockId public function Gets the unique page token for locks. Overrides LockBackendInterface::getLockId
LockBackendAbstract::wait public function Waits a short amount of time before a second lock acquire attempt. Overrides LockBackendInterface::wait
PersistentDatabaseLockBackend::__construct public function Constructs a new PersistentDatabaseLockBackend. Overrides DatabaseLockBackend::__construct

© 2001–2016 by the original authors
Licensed under the GNU General Public License, version 2 and later.
Drupal is a registered trademark of Dries Buytaert.
https://api.drupal.org/api/drupal/core!lib!Drupal!Core!Lock!PersistentDatabaseLockBackend.php/class/PersistentDatabaseLockBackend/8.1.x