mps.sync.mutex

Создайте сервисное взаимное исключение персистентности

Синтаксис

lk = mps.sync.lock(mutexName,'Connection',connectionName,Name,Value)

Описание

пример

lk = mps.sync.lock(mutexName,'Connection',connectionName,Name,Value) создает консультативный объект блокирования базы данных.

Примеры

свернуть все

Во-первых, создайте сервисный контроллер персистентности объект и использование, которые возражают, чтобы запустить сервис персистентности.

ctrl = mps.cache.control('myRedisConnection','Redis','Port',4519);
start(ctrl)

Используйте имя подключения, чтобы создать сервисное взаимное исключение персистентности.

lk = mps.sync.mutex('myMutex','Connection','myRedisConnection')
lk = 

  TimedRedisMutex with properties:

        Expiration: 10
    ConnectionName: 'myRedisConnection'
         MutexName: 'myMutex'

Входные параметры

свернуть все

Имя сервисного взаимного исключения персистентности, заданного как вектор символов.

Пример: 'myMutex'

Имя связи с сервисом персистентности, заданным как вектор символов.

Пример: 'Connection','myRedisConnection'

Аргументы в виде пар имя-значение

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: 'Expiration', 10

Время истечения срока в секундах после блокировки получено.

Другие клиенты смогут получить блокировку, даже если вы не выпустите ее.

Пример: 'Expiration', 10

Выходные аргументы

свернуть все

Сервисный взаимоисключающий объект персистентности. Если вы будете использовать Redis™ в качестве своего провайдера персистентности, lk будет объектом mps.sync.TimedRedisMutex. Если вы будете использовать MATLAB® в качестве своего провайдера персистентности, lk будет объектом mps.sync.TimedMATFileMutex.

Советы

  • Сервисное взаимное исключение персистентности позволяет нескольким клиентам сменяться с помощью совместно используемого ресурса. Каждый сотрудничающий клиент создает взаимоисключающий объект с тем же именем с помощью связи с разделяемым сервисом персистентности. Чтобы получить эксклюзивный доступ к совместно используемому ресурсу, клиент пытается получить блокировку на взаимном исключении. Когда клиент закончил работать с совместно используемым ресурсом, он выпускает блокировку. Предотвратить локауты должно клиент блокировки отказывать, все блокировки истекают после определенного количества времени.

  • Получение блокировки на взаимном исключении препятствует тому, чтобы другие клиенты получили блокировку на том взаимном исключении, но это не блокирует сервис персистентности или любые ключи или значения, сохраненные в сервисе персистентности. Эти блокировки являются консультацией только и предназначаются, чтобы использоваться сотрудничающим клиентским намерением предотвращения повреждения данных. Клиенты жулика смогут повредить или удалить данные, если они не будут добровольно уважать взаимоисключающие блокировки.

Введенный в R2018b