Объект встроенный объект

Блокировка объекта

Объект волоконного замка

В отличие от блокировок операционной системы, волоконно-оптические блокировки реализованы чисто логически, и нагрузка на блокировку и разблокировку невелика.

1 2 3 4
var l = new coroutine.Lock(); l.acquire(); ..... l.release();

Наследование

#lineWidth: 1.5 #font: Helvetica,sans-Serif #fontSize: 10 #leading: 1.6 #.this: fill=lightgray #.class: fill=white [<class>object|toString();toJSON()] [<this>Lock|new Lock()|acquire();release();count()] [<class>Condition] [<class>Event] [<class>Semaphore] [object] <:- [Lock] [Lock] <:- [Condition] [Lock] <:- [Event] [Lock] <:- [Semaphore] Lock new Lock() acquire() release() count() object toString() toJSON() Condition Event Semaphore

Конструктор

Lock

Конструктор

1
new Lock();

Функция члена

acquire

Приобрести право собственности на замок

1
Boolean Lock.acquire(Boolean blocking = true);

Параметры звонка:

  • blocking: Boolean, указать, ждать ли, если правда, ждать, по умолчанию истинно

Результат возврата:

  • Boolean, Возвращает, получена ли блокировка успешно, истина означает, что получение выполнено успешно.

Метод получения используется для получения права владения блокировкой.Когда блокировка находится в доступном состоянии, этот метод немедленно возвращает истину.

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

Когда блокировка недоступна и блокировка имеет значение false, метод возвращает false.


release

Освободить право владения блокировкой

1
Lock.release();

Этот метод освобождает владение блокировкой. Если текущее волокно не владеет блокировкой, этот метод выдаст ошибку.


count

Запросить количество ожидающих в настоящее время задач

1
Integer Lock.count();

Результат возврата:

  • Integer, Возвращает количество задач

toString

Возвращает строковое представление объекта, обычно возвращает «[Native Object]», объект может быть повторно реализован в соответствии с его собственными характеристиками.

1
String Lock.toString();

Результат возврата:

  • String, Возвращает строковое представление объекта

toJSON

Возвращает представление объекта в формате JSON, обычно возвращает набор читаемых атрибутов, определенных объектом.

1
Value Lock.toJSON(String key = "");

Параметры звонка:

  • key: Строка, не используется

Результат возврата:

  • Value, Возвращает значение, содержащее сериализуемый JSON