AstraRegul
Релиз 2025.08.15.00
×

4.4.1.3.2.3.2. Разделение потоков

 
Чтобы разделить потоки, нужно:
 1. Указать категорию данных для сигналов, значения, которых передаются.
 2. Разделить потоки данных.
 
Разделить потоки можно:
На стороне клиента – в компоненте, который запрашивает или получает данные.
На стороне сервера – в компоненте, который предоставляет или передаёт данные.
 

Указание категории данных

 
Создайте тип(ы) атрибута(ов) для указания категорий данных:
 
Вариант 1. Создайте один строковый тип атрибута: категория данных будет указываться в значении этого атрибута.
 
Вариант 2. Для каждой категории данных создайте пустой тип атрибута: категория данных будет определяться наличием атрибута созданного типа.
 
 
Чтобы создать тип атрибута выполните следующие действия:
 
  • Перейдите в "Содержимое модуля" (корень проекта) или "Пространство имён".
 
2. Добавьте "Тип атрибута".
 
3. На изображении элемента или в свойстве "Тип значения" укажите тип значения – "string" для 1 варианта или "void" для 2 варианта.
 
4. На изображении элемента (поле "Заголовок") или в свойстве "Название" укажите заголовок – имя атрибута в окне Атрибуты.
Для строкового – произвольное имя (например, Категория данных).
 
 
Для пустого типа атрибута – название категории (например, Команды).
 
На изображении элемента или в свойстве "Описание" можно указать описание. Описание отображается в окне "Атрибуты" при наведении мышью на атрибут.
 
Для строкового типа атрибута в свойстве "Значение по умолчанию" укажите значение, которое будет указываться при добавлении атрибута.
 
 
5. Сигналам, значения которых передаются, укажите категорию:
Если используется строковый атрибут – сигналу добавьте атрибут и в значении атрибута укажите название категории.
 
 
Если используются пустые атрибуты – сигналу добавьте атрибут нужного типа.
 
 
 

Разделение потоков на стороне клиента

 
  • Перейдите в компонент-приёмник (компонент, который запрашивает или получает данные).
2. В контекстном меню выберите "Добавить ссылки на исполняемые объекты..." и в появившемся окне выберите приложение, в котором находятся передаваемые данные.
 
 
 
Будет добавлена Ссылка на исполняемый модуль приложения, указывающая на выбранное приложение.
 
 
3. Для каждой категории данных добавьте клиентский логический адаптер для получения данных от компонента-источника.
 
 
4. Протяните связь от элемента "Ссылка на исполняемый модуль приложения" к добавленному адаптеру.
 
5. У связи в свойстве "Категории данных" укажите:
Все – по связи будут передаваться все данные
 
 
Все указанные – по связи будут передаваться только указанные категории данных
 
 
Все, кроме указанных – по связи будут передаваться все данные, кроме указанных категорий, в том числе данные без категории.
 
 
6. Для связи укажите категорию данных:
 
Если используется строковый атрибут – связи добавьте атрибут и в значении атрибута укажите название категории.
 
 
Если используются пустые атрибуты – связи добавьте атрибут нужного типа. Можно добавить несколько атрибутов разных типов.
 
7. На изображении адаптера нажмите кнопку "+" и в появившемся окне выберите серверный логический адаптер в составе компонента-источника.
 
 
В адаптер будет добавлен элемент "Конфигурация связи с сервером".
 
8. В свойствах элемента укажите период обновления данных.
 
 
В результате:
В компоненте-приёмнике будет несколько клиентских логических адаптеров.
Разные логические адаптеры будут запрашивать/получать от компонента-источника разные категории данных и с разным периодом.
 

Разделение потоков на стороне сервера

 
Для разделения потоков на стороне сервера нужно, чтобы в компоненте-источнике было расположено не "Приложение", а "Исполняемый модуль приложения", поскольку для приложения нельзя настроить разделение потоков.
 
  • Перейдите в компонент-источник (компонент, который предоставляет или передаёт данные).
2. Для каждой категории данных добавьте серверный логический адаптер.
 
 
3. Протяните связь от элемента Исполняемый модуль приложения к добавленному адаптеру.
 
 
4. У связи в свойстве Категории данных укажите:
Все – по связи будут передаваться все данные
 
 
Все указанные – по связи будут передаваться только указанные категории данных.
 
 
Все, кроме указанных – по связи будут передаваться все данные, кроме указанных категорий, в том числе данные без категории.
 
 
5. Для связи укажите категорию данных:
Если используется строковый атрибут – связи добавьте атрибут и в значении атрибута укажите название категории.
 
 
Если используются пустые атрибуты – связи добавьте атрибут нужного типа. Можно добавить несколько атрибутов разных типов.
 
 
6. Перейдите в компонент, который запрашивает или получает данные.
7. На изображении клиентского логического адаптера нажмите "+" и в появившемся окне выберите серверные логические адаптеры в составе компонента-источника.
 
 
В адаптер будут добавлены конфигурации связи с выбранными адаптерами.
 
8. В свойствах каждой конфигурации связи укажите период обновления данных.
 
 
В результате:
Компонент-источник будет предоставлять/передавать разные категории данных через разные серверные логические адаптеры.
Компонент-приёмник будет запрашивать/принимать данные через один клиентский логический адаптер, но с разным периодом опроса разных серверных логических адаптеров.