锁总是阻碍symfony

时间:2019-06-28 13:57:42

标签: php symfony locking symfony4

我使用symfony 4.2和symfony / lock 4.2

我需要一条路由来检查是否使用了锁,如果没有则处理一些代码。

这是我使用的示例:

     /**
     * @Route("/dropbox/process", name="dropbox.process")
     */
    public function dropboxProcessAction() {

        $store = new SemaphoreStore();
        $factory = new Factory($store);
        $lock = $factory->createLock("TESTLOCK", 3600);

        $response = new Response();

        if ($lock->acquire(false)) {
            $response->setContent('Acquired');
            $response->setStatusCode(200);
            sleep(5);
            $lock->release();
        } else {
            $response->setContent('NotAquired');
            $response->setStatusCode(400);
        }
        return $response;
    }

如果我打开两个

  

http://localhost:8000/dropbox/process

同时,第二个正在等待第一个完成后再执行。

当我通过 false 作为 acquire 功能的补充时,它不应该立即响应 false 吗?

0 个答案:

没有答案