acquire

Получите консультационную блокировку на мьютексе службы стойкости

Синтаксис

Описание

пример

TF = acquire(lk,timeout) приобретает консультативную блокировку и возвращает логическую 1 (true) если блокировка была успешной, и логический 0 (false) в противном случае. Если блокировка недоступна, acquire продолжит пытаться приобрести его для timeout секунд.

Примеры

свернуть все

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

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

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

lk = mps.sync.lock('myDbLock','Connection','myRedisConnection')

Попытайтесь приобрести консультационную блокировку. Если блокировка недоступна, повторите приобретение в течение 20 секунд.

acquire(lk, 20);
TF =

  logical

   1

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

свернуть все

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

Длительность, после которой повторите попытку получения блокировки.

Пример: 20

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

свернуть все

TF имеет логическую 1 (true) если приобретение консультативной блокировки было успешным, и логический 0 (false) в противном случае.

Введенный в R2018b