FlockStore
class FlockStore implements StoreInterface
FlockStore — это реализация StoreInterface, использующая блокировку FileSystem.
Исходная реализация в \Symfony\Component\Filesystem\LockHandler.
Методы
| __construct(string|null $lockPath = null) | ||
| save(Key $key) Сохраняет ресурс, если он не заблокирован другим пользователем. | ||
| waitAndSave(Key $key) Ожидает, пока ключ станет свободным, а затем сохраняет ресурс. | ||
| putOffExpiration(Key $key, float $ttl) Удлиняет срок действия ресурса. | ||
| delete(Key $key) Удаляет ресурс из хранилища. | ||
| bool | exists(Key $key) Возвращает, существует ли ресурс в хранилище. |
Детали
__construct(string|null $lockPath = null)
Параметры
| string|null | $lockPath | каталог для хранения блокировки, по умолчанию — временный каталог системы |
Исключения
| LockStorageException | Если каталог блокировки не удалось создать или он не доступен для записи |
save(Key $key)
Сохраняет ресурс, если он не заблокирован другим пользователем.
Параметры
| Key | $key | ключ для блокировки |
Исключения
| LockConflictedException |
waitAndSave(Key $key)
Ожидает, пока ключ станет свободным, а затем сохраняет ресурс.
Если хранилище не поддерживает эту функцию, оно должно выбросить исключение NotSupportedException.
Параметры
| Key | $key | ключ для блокировки |
Исключения
| LockConflictedException | |
| NotSupportedException |
putOffExpiration(Key $key, float $ttl)
Удлиняет срок действия ресурса.
Если хранилище не поддерживает эту функцию, оно должно выбросить исключение NotSupportedException.
Параметры
| Key | $key | ключ для блокировки |
| float | $ttl | количество секунд, в течение которых блокировка должна храниться в хранилище |
Исключения
| LockConflictedException | |
| NotSupportedException |
delete(Key $key)
Удаляет ресурс из хранилища.
Параметры
| Key | $key | ключ для удаления |
bool exists(Key $key)
Возвращает, существует ли ресурс в хранилище.
Параметры
| Key | $key | ключ для удаления |
Возвращаемое значение
| bool |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/3.4/Symfony/Component/Lock/Store/FlockStore.html