Текущий раздел:

Описания RDS

Описание пользователя

Глава 3. Использование стандартных модулей автокомпиляции

§3.7. Краткий перечень вводимых в модель описаний и реакций на события

§3.7.10. Обмен данными по сети

§3.7.10.3. Сетевое соединение разорвано

# Описание пользователя

## Глава 3. Использование стандартных модулей автокомпиляции

### §3.7. Краткий перечень вводимых в модель описаний и реакций на события

#### §3.7.10. Обмен данными по сети

##### §3.7.10.3. Сетевое соединение разорвано

Это событие возникает в блоке, ранее запросившем сетевое соединение с каким-либо каналом передачи данных сервера, при разрыве этого соединения. Если соединение разорвано сервером, RDS будет пытаться самостоятельно восстановить его без участия модели. Стандартный модуль автокомпиляции не автоматизирует передачу данных между блоками по сети, желающие реализовать ее могут изучить §2.15 руководства программиста.

Текст реакции на разрыв соединения вводится на вкладке «события» левой панели редактора модели: раздел «сеть», подраздел «соединение разорвано». В классе блока для нее создается функция с именем rdsbcppNetDisconnect следующего вида:

      // Server connection closed
      void rdsbcppBlockClass::rdsbcppNetDisconnect(RDS_PNETCONNDATA ConnData)
      {
         … пользовательский текст реакции …
      }

Параметр функции ConnData – это указатель на структуру RDS_NETCONNDATA, описывающую параметры установленного соединения (см. §3.7.10.2). Поле ByServer этой структуры будет содержать TRUE, если соединение разорвано сервером, и FALSE, если соединение разорвано моделью самого блока.

При написании моделей блоков без использования модуля автокомпиляции разрыву сетевого соединения соответствует константа RDS RDS_BFM_NETDISCONNECT.