KasperskyOS Community Edition 1.0
О примере echo
О примере echo
Пример echo описывает простейший случай взаимодействия двух сущностей:
- Сущность
Client
передает сущностиServer
число (value
). - Сущность
Server
изменяет это число и передает новое число (result
) сущностиClient
. - Сущность
Client
выводит числоresult
на экран.
Чтобы организовать такое взаимодействие сущностей, потребуется:
- Соединить сущности
Client
иServer
, используя init-описание. - Реализовать на сервере интерфейс с единственным методом
Ping
, который имеет один входной аргумент – исходное число (value
) и один выходной аргумент – измененное число (result
).Описание метода
Ping
на языке IDL:Ping(in UInt32 value, out UInt32 result);
- Создать файлы статических описаний на языках EDL, CDL и IDL. С помощью компилятора NK сгенерировать файлы, содержащие транспортные методы и типы (прокси-объект, диспетчеры и т.д.).
- В коде сущности
Client
инициализировать все необходимые объекты (транспорт, прокси-объект, структуру запроса и др.) и вызвать интерфейсный метод. - В коде сущности
Server
подготовить все необходимые объекты (транспорт, диспетчер компонента и диспетчер сущности и др.), принять запрос от клиента, обработать его и отправить ответ.
Пример echo состоит из следующих исходных файлов:
client/src/client.c
– реализация сущностиClient
;server/src/server.c
– реализация сущностиServer
;resources/Server.edl
,resources/Client.edl
,resources/Ping.cdl
,resources/Ping.idl
– статические описания;init.yaml
– init-описание.
Идентификатор статьи: about_echo_example, Последнее изменение: 16 февр. 2022 г.