Помогите решить логическую задачу

QWER-MAS

Client
Регистрация
14.05.2015
Сообщения
96
Благодарностей
10
Баллы
18
Есть gsm шлюз 16 портов.
Есть сим банк 128 симкарт.

Нужно чтоб зенка запускала 16 потоков, один поток на один порт, отправила ussd команды, получили смски. Если один с потоков завершился новый не должен стартовать пока не закончатся все.
Дождаться выполнение этих 16 потоков, и после этого нужно выполнить команду на сим банк который переподключить новых 16 сим карт.


И снова стартуем 16 потоков.
И так 8 раз.
 

S16er1um

Client
Регистрация
14.04.2016
Сообщения
826
Благодарностей
240
Баллы
43
Проэкт №1. Берёте в начале создаёте текстовый файл. Записываете в него 0 ручками. Каждый раз в конце инстанса записываете в него число на 1 больше. Я так понял, у вас всегда должно быть 16 потоков на одних опциях, поэтому в конце шаблона допиливаете проверку. Если число =16, то нужно создать новый файл. (который запускает проэкт №2)

Проэкт №2. создаёте 2ой проэкт, который меняет ваши настройки на новые. (запускается при наличии файла, который создаёт проэкт №1 если в файле число 16)

Ставите проэкт на рассписание с опцией Запускать по сигналу (выбираете название файла, который создаёт ваш Проэкт №1). Вставляете в него вначале функцию "Удалить файл который его запускает" чтоб он не повторялся сам по себе до бесконечности.

upload_2017-3-13_15-55-41.png



Блин. сложно сам запутался) Короче суть такая. есть 3 текстовых файла file1,file2,file3. Допустим в file1 записываются числа от 0 до 16ти. Записываем в него ручками 0.Это постоянный файл который удалять не нужно. Теперь. После завершения 16ти инстансов нам нужно сменить настройки на сколько я понял. Поэтому:
В конце каждого инстанса проверяем значение в file1. Если оно !=16 то просто завершаем проэкт. Если ==16 - то создаём file2. и завершаем.

Теперь. Создаём проэкт , который меняет настройки программы. Получается предыдущий проэкт выполнился ровно 16 раз (далее объясню почему) и закончился тем что создал file2. Ставим в рассписании этого проэкта "Запускать по появлению file2". В начале проэкта добавляем опцию "Удалить file2", чтоб он не выполнялся до бесконечности. В конце , после всех нужных нам манипуляций создаём file3, а в file1 записываем 0.

Теперь вернёмся к проэкту №1. Ставим его на рассписание с условием "Запускать при появлении file3" число выполнений на каждый проэкт ставим 16. Добавляем в начало проэкта проверку "если file3 существует - удалить его и продолжить дальше", если не существует - просто продолжить дальше. Такая инструкция позволит так же избежать его зацикливания.

Теперь , когда оба проэкта стоят на рассписании и полностью настроеные мы создаём ручками file3 и забываем о проэкте) он зацикливает сам себя)


П.С. Уже прям вижу как сюда заходят умники и рушат мой велосипед)))
 

QWER-MAS

Client
Регистрация
14.05.2015
Сообщения
96
Благодарностей
10
Баллы
18
Проэкт №1. Берёте в начале создаёте текстовый файл. Записываете в него 0 ручками. Каждый раз в конце инстанса записываете в него число на 1 больше. Я так понял, у вас всегда должно быть 16 потоков на одних опциях, поэтому в конце шаблона допиливаете проверку. Если число =16, то нужно создать новый файл. (который запускает проэкт №2)

Проэкт №2. создаёте 2ой проэкт, который меняет ваши настройки на новые. (запускается при наличии файла, который создаёт проэкт №1 если в файле число 16)

Ставите проэкт на рассписание с опцией Запускать по сигналу (выбираете название файла, который создаёт ваш Проэкт №1). Вставляете в него вначале функцию "Удалить файл который его запускает" чтоб он не повторялся сам по себе до бесконечности.

Посмотреть вложение 19182


Блин. сложно сам запутался) Короче суть такая. есть 3 текстовых файла file1,file2,file3. Допустим в file1 записываются числа от 0 до 16ти. Записываем в него ручками 0.Это постоянный файл который удалять не нужно. Теперь. После завершения 16ти инстансов нам нужно сменить настройки на сколько я понял. Поэтому:
В конце каждого инстанса проверяем значение в file1. Если оно !=16 то просто завершаем проэкт. Если ==16 - то создаём file2. и завершаем.

Теперь. Создаём проэкт , который меняет настройки программы. Получается предыдущий проэкт выполнился ровно 16 раз (далее объясню почему) и закончился тем что создал file2. Ставим в рассписании этого проэкта "Запускать по появлению file2". В начале проэкта добавляем опцию "Удалить file2", чтоб он не выполнялся до бесконечности. В конце , после всех нужных нам манипуляций создаём file3, а в file1 записываем 0.

Теперь вернёмся к проэкту №1. Ставим его на рассписание с условием "Запускать при появлении file3" число выполнений на каждый проэкт ставим 16. Добавляем в начало проэкта проверку "если file3 существует - удалить его и продолжить дальше", если не существует - просто продолжить дальше. Такая инструкция позволит так же избежать его зацикливания.

Теперь , когда оба проэкта стоят на рассписании и полностью настроеные мы создаём ручками file3 и забываем о проэкте) он зацикливает сам себя)


П.С. Уже прям вижу как сюда заходят умники и рушат мой велосипед)))

Ок спасибо, буду пробовать.

Только насколько ето будет надежно , надо тестировать.
 

rich7

Client
Регистрация
18.02.2016
Сообщения
66
Благодарностей
40
Баллы
18

Обращаем Ваше внимание на то, что данный пользователь заблокирован.
Не рекомендуем проводить с rich7 какие-либо сделки.

(facepalm)
простите конечно, но управлять gsm шлюзом через зенку это 3,14дец, вы чо курите
а потом еще и шаблоны на заказ будете делать с таким месивом полюбе

пишите/заказывайте api под шлюз и юзайте в шабе как и другие смс-сервисы. если для себя только делать там работы на пару часов
 
Последнее редактирование:

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