You are here

function _lock_id in Drupal 7

Same name and namespace in other branches
  1. 6 includes/lock.inc \_lock_id()

Helper function to get this request's unique id.

Related topics

1 call to _lock_id()
lock_release_all in includes/lock.inc
Release all previously acquired locks.

File

includes/lock.inc, line 76
A database-mediated implementation of a locking mechanism.

Code

function _lock_id() {

  // Do not use drupal_static(). This identifier refers to the current
  // client request, and must not be changed under any circumstances
  // else the shutdown handler may fail to release our locks.
  static $lock_id;
  if (!isset($lock_id)) {

    // Assign a unique id.
    $lock_id = uniqid(mt_rand(), TRUE);

    // We only register a shutdown function if a lock is used.
    drupal_register_shutdown_function('lock_release_all', $lock_id);
  }
  return $lock_id;
}