我使用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;
}
如果我打开两个
同时,第二个正在等待第一个完成后再执行。
当我通过 false 作为 acquire 功能的补充时,它不应该立即响应 false 吗?