public function acquire($sleep = null, $retries = null) {
		if ($this->identifier) {
			// We already have it
			return true;
		}

		if ($sleep == null || $retries == null) {
			$acquired = $this->acquire_fair_with_lock();
			return $acquired;
		}
		
		while ($sleep > 0 && $retries > 0) {
			$acquired = $this->acquire_fair_with_lock();

			if ($acquired) {
				return true;
			}

			$retries -= 1;
			sleep($sleep);
		}
		return false;
	}