RedisLock
class RedisLock extends Lock (View source)
Traits
InteractsWithTime |
Properties
protected string | $name | The name of the lock. | from Lock |
protected int | $seconds | The number of seconds the lock should be maintained. | from Lock |
protected string | $owner | The scope identifier of this lock. | from Lock |
protected Connection | $redis | The Redis factory implementation. |
Methods
int | secondsUntil(DateTimeInterface|DateInterval|int $delay) Get the number of seconds until the given DateTime. | from InteractsWithTime |
int | availableAt(DateTimeInterface|DateInterval|int $delay = 0) Get the "available at" UNIX timestamp. | from InteractsWithTime |
DateTimeInterface|int | parseDateInterval(DateTimeInterface|DateInterval|int $delay) If the given value is an interval, convert it to a DateTime instance. | from InteractsWithTime |
int | currentTime() Get the current system time as a UNIX timestamp. | from InteractsWithTime |
void | __construct(Connection $redis, string $name, int $seconds, string|null $owner = null) Create a new lock instance. | |
bool | acquire() Attempt to acquire the lock. | |
void | release() Release the lock. | |
string | getCurrentOwner() Returns the owner value written into the driver for this lock. | |
mixed | get(callable|null $callback = null) Attempt to acquire the lock. | from Lock |
bool | block(int $seconds, callable|null $callback = null) Attempt to acquire the lock for the given number of seconds. | from Lock |
string | owner() Returns the current owner of the lock. | from Lock |
bool | isOwnedByCurrentProcess() Determines whether this lock is allowed to release the lock in the driver. | from Lock |
void | forceRelease() Releases this lock in disregard of ownership. |
Details
protected int secondsUntil(DateTimeInterface|DateInterval|int $delay)
Get the number of seconds until the given DateTime.
protected int availableAt(DateTimeInterface|DateInterval|int $delay = 0)
Get the "available at" UNIX timestamp.
protected DateTimeInterface|int parseDateInterval(DateTimeInterface|DateInterval|int $delay)
If the given value is an interval, convert it to a DateTime instance.
protected int currentTime()
Get the current system time as a UNIX timestamp.
void __construct(Connection $redis, string $name, int $seconds, string|null $owner = null)
Create a new lock instance.
bool acquire()
Attempt to acquire the lock.
void release()
Release the lock.
protected string getCurrentOwner()
Returns the owner value written into the driver for this lock.
mixed get(callable|null $callback = null)
Attempt to acquire the lock.
bool block(int $seconds, callable|null $callback = null)
Attempt to acquire the lock for the given number of seconds.
string owner()
Returns the current owner of the lock.
protected bool isOwnedByCurrentProcess()
Determines whether this lock is allowed to release the lock in the driver.
void forceRelease()
Releases this lock in disregard of ownership.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/6.x/Illuminate/Cache/RedisLock.html