gpt4 book ai didi

laravel - 如何在 Laravel 中使用原子锁?

转载 作者:行者123 更新时间:2023-12-03 06:36:22 24 4
gpt4 key购买 nike

我有一些实体和用户。该实体只能由一个用户处理。
因此,如果用户对该实体进行了 GET 请求,它将在一段时间内“连接”到他。

我发现我可以用缓存做这个东西,但是关于Atomic locks的解释对我来说不清楚,有人可以帮助演示使用的简单示例吗?

最佳答案

这是我最近实现的:

    try {
// Trying to acquiring lock.
// If lock is already acquired, waiting 5 seconds to try again.
Cache::lock($key)->block(5);
} catch (LockTimeoutException $e) {
// Unable to acquire lock, can't cache the token
return;
}

// Lock acquired, caching the token
Cache::put($key, $token, 1);

为了测试这一点,我们使用了 2 个以同一用户身份登录并同时发出相同请求的设备。
希望这可以帮助。

关于laravel - 如何在 Laravel 中使用原子锁?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57315584/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com