[Содержание] [Предыдущая] [Следующая] [Индекс]

project

Содержит данные для всего приложения.

Объект server-side
Реализовано в LiveWire 1.0

Создание

Двигатель времени выполнения JavaScript на сервере автоматически создает объект project для каждого приложения, выполняющегося на сервере.

Описание

Двигатель времени выполнения JavaScript на сервере создает объект project, когда приложение запускается, и уничтожает объект project, когда приложение или сервер останавливается. Типичный срок службы объекта project дни или недели.

Каждый клиент, обращающийся к одному и тому же приложению, совместно использует один и тот же объект project. Используйте объект project, чтобы поддержать глобальные данные для всего приложения. Несколько клиентов могут обращаться к приложению одновременно, и объекты project позволяют этим клиентам, совместно использовать информацию.

Двигатель времени выполнения создает набор объектов project для каждого процесса Netscape HTTPD, выполняющегося на сервере. Так как отдельные процесс HTTPD на сервере могут выполняться на различных номерах портов, двигатель времени выполнения создает набор объектов project для каждого процесса.

Вы можете блокировать объект project, чтобы гарантировать, что различные клиенты не изменят свои свойства одновременно. Когда один клиент блокирует объект project, другие клиенты должны ждать прежде, чем они смогут заблокировать его. Смотрите Lock для подробной информации о блокировке объекта project.

Резюме Методов

lock
Получает блокировку.
unlock
Выпускает блокировку.

Примеры

Пример 1. Этот пример создает свойство lastID и присваивает ему значение, увеличивая существующее значение.

project.lastID = 1 + parseInt(project.lastID, 10)
Пример 2. Этот пример увеличивает значение свойства lastID и использует его, чтобы присвоить значение свойству customerID.

project.lock()
project.lastID = 1 + parseInt(project.lastID, 10);
client.customerID = project.lastID;
project.unlock();
В предыдущем примере, обратите внимание, что объект project блокирован, в то время как присваивается значение свойству customerID, так что ни какой другой клиент не может изменить свойство lastID в то же самое время.

Смотрите также

client, request, server

Свойства

Объект project не имеет предопределенных свойств. Вы создаете заказные свойства, чтобы содержать специфические для проекта данные, которые требуются приложению.

Вы можете создавать свойство для объекта project, присваивая ему имя и значение. Например, Вы можете создать свойство объекта project чтобы следить за следующим доступным ID Заказчика. Любому клиенту, который обращается к приложению без ID Заказчика, назначается еденица, и значение ID последовательно увеличивается для каждого начального доступа.

Методы

lock

Получает блокировку. Если другая нить имеет блокировку, этот метод ждет, пока он не сможет получить блокировку.

Метод объекта project
Реализовано в LiveWire 1.0

Синтаксис

lock()

Параметры

Нет.

Возвращает

Ничего.

Описание

Вы можете получить блокировку для объекта, чтобы гарантировать, что различные клиенты не обратятся к критическому разделу кода одновременно. Когда приложение блокирует объект, другие запросы клиентов должны ждать прежде, чем они смогут заблокировать объект.

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

Смотрите также

Lock, project.unlock

unlock

Выпускает блокировку.

Метод объекта project
Реализовано в LiveWire 1.0

Синтаксис

unlock()

Параметры

Нет.

Возвращает

False, если он терпит неудачу; иначе, true. Сбой указывает внутреннюю ошибку JavaScript или что Вы попытались выпустить блокировку, которой Вы не обладаете.

Описание

Если Вы размыкаете блокировку, которая уже выпущена, возникающее в результате поведение неопределено.

Смотрите также

Lock, project.lock


[Содержание] [Предыдущая] [Следующая] [Индекс]

Последняя Модификация: 10/31/97 12:33:29


Права © 1997 Netscape Communications Corporation



Все мессаги сюда:yanich@inbox.ru
Hosted by uCoz