我的疑问:是否有一种方法可以确保一系列语句以原子方式执行。但有一件事是确定我们不需要使用锁。那么,有什么优雅的方法可以做到这一点。例如我需要在 php.ini 中做同样的事情。例如:要执行的语句:
- 从 APC 缓存中获取密钥。
- 对此进行一些操作..让我们说增加它。
- 再次将其保存到缓存中。
我需要它来原子地做这些事情,因为很多进程可以同时更新同一件事。
谢谢,瓦伦
信号量是其中一种方法:
锁、互斥体、信号量都是为了保证多任务/并行计算机中的原子性而发明的。
有一些方法可以优化锁定:最糟糕的情况是在循环中忙于等待资源准备好;而更好的解决方案涉及信令/排队以获取资源。
在这一点上应该清楚的是,在没有锁定的情况下,你可以做很多事情来实现原子性,特别是当某个时刻有多个指令在执行时,即使是在单个 CPU 内核中(它称为流水线)。
也就是说,这里之前已经问过这个问题:APC 缓存和原子操作