# 锁-并发处理

# 说明

在实际的开发中我们经常会碰到并发的问题,这时候根据业务场景可以使用不同的方式去处理并发的问题。比如使用锁机制、队列的使用等。在CmlPHP要使用队列可以参考队列服务。同时CmlPHP也提供了易于使用的锁功能。

# 使用锁

Lock::lock('xxx')

TIP

锁有lock()unlock()方法 正常情况不需要特意unlock脚本执行结束统一解锁

# 驱动

可在入口中配置使用的驱动

\Cml::getContainer()->singleton('cml_lock', \Cml\Lock\Redis::class);
//内置\Cml\Lock\File::class|\Cml\Lock\Redis::class|\Cml\Lock\Memcache::class三种

内置的redis锁跟/memcache锁 跟缓存服务挂钩,可以通过配置文件中'locker_use_cache' => 'default_cache'配置, 默认使用default_cache