Субглобальные переменные внутри одного проекта для всех потоков

dmitlife

Client
Регистрация
25.04.2019
Сообщения
43
Благодарностей
26
Баллы
18
Обычные переменные видны только в пределах одного потока проекта (если проект работает в многопоточном режиме, то каждый поток будет иметь свою локальную, независимую переменную). Глобальные же переменные доступны для всех проектов и их потоков в ZennoPoster.

Предлагаю создать субглобальные переменные внутри одного проекта. То есть эти субглобальные переменные будут доступны всем потокам только внутри одного проекта.

Зачем это нужно?
К примеру, я разработал проект для работы с сервисом "A" с определённым набором действий и установил там глобальные переменные для многопоточности. Всё отлично работает.

Но к примеру возникла задача одновременно использовать этот же проект для сервиса "Б, В и Г" или больше.
И вот я добавляю несколько раз этот же проект в zennoposter для работы с этими сервисами, но вот не задача, при работе глобальные переменные этих проектов друг-друга переписывают.

Приходится для одного и того же проекта, который выполняет одинаковые действия только с новыми сервисами, создавать кучу глобальных переменных, в которых просто изменять несколько символов для отличия, при этом глобальных переменных становится всё больше и больше.

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

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 686
Баллы
113
В глобальных переменных есть не только ее имя, но и пространство имен. Пространство имен можно сделать на базе наименования сервиса и имени проекта. Вот и все решение.
Ну и естественно, глобалки надо создавать не руками, а кодом в самом начале проекта.
 

bizzon

Client
Регистрация
08.09.2015
Сообщения
1 085
Благодарностей
126
Баллы
63
Ну и естественно, глобалки надо создавать не руками, а кодом в самом начале проекта.
Прошу прощения, вот этот момент можно подробнее или пример какой, а то не соображу.
 

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 686
Баллы
113

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)