library Network
Работа с сетью построена на базе динамической библиотеки scnet32.dll (scnet16.dll). Данная библиотека реализует обмен данными по сети с использованием протокола TCP/IP. В последующих версиях возможна поддержка других протоколов.
Функционально библиотека поддерживает синхронизацию областей памяти на разных машинах по сети.
Stratum использует эту библиотеку для синхронизации переменных имиджей на разных машинах.
Функционально реализация работы в сети осуществляется с помощью функций : RegisterNetObject и UnRegisterNetObject. Основная это RegisterNetObject, которая осуществляет связывание переменных на разных машинах.
Для осуществление связи следует указать имидж переменные которого следует передавать или получать из сети. Имиджи должны содержать одинаковое количество переменных и одинаковых типов.
Следует также указать будет ли этот имидж сервером или клиентом. Опуская технические подробности, можно заметить, что разница между клиентом и сервером следующая:
1. Сервер должен быть запущен раньше клиента . Сервер может сколь угодно долго ждать подключения клиента(ов), клиент же предполагает о активности сервера и не начинает работать без него. Это основное отличие.
2. К серверу может быть подключено множество клиентов, только в этом случае разумно рассылать данные из сервера.
3. При отключении клиента сервер продолжает работать и может обеспечить подключение этого клиента снова. При отключении сервера все клиенты перестают работать.
Кроме того при рассылке значений переменных можно использовать две стратегии:
1. Посылать их все время , через промежутки времени.
2. Посылать только при изменении.
Для соединения следует указать адрес ( буквенный или цифровой) , порт, и название протокола. Адрес нужен только клиенту, чтобы соединиться с сервером. Порты должны быть одинаковыми. Пока другие протоколы не поддерживаются но для совместимости следует указывать TCP/IP.
Для работы по сети можно воспользоваться имиджами:
Network_Client_Objectclass_Network_Client_Object
Network_Server_Objectclass_Network_Server_Object
Эти имиджи осуществляют вызов функции RegisterNetObject, и по сути дела являются еще более высокоуровневым интерфейсом к ней.
Created with the Personal Edition of HelpNDoc: Make your documentation accessible on any device with HelpNDoc