主要内容

mps.sync.mutex

创建一个持久服务互斥

描述

例子

= mps.sync.mutex (mutexName,'联系',connectionName,名称,值)创建一个数据库咨询锁对象。

例子

全部折叠

首先,创建一个持久化服务控制器对象,并使用该对象启动持久化服务。

ctrl = mps.cache.Control(“myRedisConnection”,“复述”,“端口”, 4519);开始(ctrl)

使用连接名称创建持久服务互斥。

路= mps.sync.mutex (“锁定myMutex”,“连接”,“myRedisConnection”)
连接名:'myRedisConnection' MutexName: 'myMutex'

输入参数

全部折叠

持久性服务互斥锁的名称,指定为字符向量。

例子:“锁定myMutex”

到持久服务的连接名,指定为字符向量。

例子:“连接”、“myRedisConnection”

名称-值对的观点

指定可选的逗号分隔对名称,值参数。的名字参数名和价值是对应的值。的名字必须出现在引号内。您可以按如下顺序指定几个名称和值对参数Name1, Value1,…,的家

例子:“过期”,10

获得锁后的过期时间(以秒为单位)。

即使您不释放锁,其他客户端也能够获得该锁。

例子:“过期”,10

输出参数

全部折叠

持久性服务互斥对象。如果你使用Redis™作为你的持久性提供商,将是A.mps.sync.TimedRedisMutex对象。如果你用MATLAB®作为持久性提供者,将是A.mps.sync.TimedMATFileMutex对象。

提示

  • 持久服务互斥允许多个客户机轮流使用共享资源。每个协作的客户端使用到共享持久性服务的连接创建具有相同名称的互斥对象。为了获得对共享资源的独占访问,客户端尝试获取互斥锁上的锁。当客户端完成对共享资源的操作时,它释放锁。为了防止锁定客户端崩溃时的锁定,所有锁定都在一定时间后过期。

  • 获取互斥锁可以防止其他客户端获取该互斥锁,但它不会锁定持久服务或存储在持久服务中的任何键或值。这些锁仅是建议性的,用于合作的客户端,以防止数据损坏。如果非法客户端不主动遵守互斥锁,那么它们将能够破坏或删除数据。

介绍了R2018b