|
Программа с %
|
|||
---|---|---|---|
#18+
Добрый день. В Cache можно запускать программу с % в область %SYS чтобы она могла работать и для остальных областей ? (job^%RTName) Например какой-то сокет на какой то порт. Я пробовал, но почему-то работает только в той области откуда была запущена. Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 14:18 |
|
Программа с %
|
|||
---|---|---|---|
#18+
Valeriu, Запускать можно из любой области, верно. А что значит работает только в той области откуда запущена? А где ещё нужно чтобы работала, и как вы это проверяете? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 14:48 |
|
Программа с %
|
|||
---|---|---|---|
#18+
DAiMor, Я бы хотел запускать ее в %sys на подобия сервиса, один раз запустил и забыл. Так в Каше работает VisM, MSM-Activate, etc. Запускаются при старте системы. Пользователь только переключается между областями ZNAMESPACE... ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 15:01 |
|
Программа с %
|
|||
---|---|---|---|
#18+
ValeriuDAiMor, Я бы хотел запускать ее в %sys на подобия сервиса, один раз запустил и забыл. Так в Каше работает VisM, MSM-Activate, etc. Запускаются при старте системы. Пользователь только переключается между областями ZNAMESPACE...И это конечно возможно, можно через ZSTART запускать. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 15:10 |
|
Программа с %
|
|||
---|---|---|---|
#18+
Ее можно конечно смампировать для всех областей, но интересен этот подход. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 15:10 |
|
Программа с %
|
|||
---|---|---|---|
#18+
Valeriu, % и так смаппирован на все области. Есть скрытый системный маппинг, там описано. Все ещё не понятно, в чем проблема, что не работает? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 15:12 |
|
Программа с %
|
|||
---|---|---|---|
#18+
DAiMorИ это конечно возможно, можно через ZSTART запускать. Понятно, я так и делаю. Но она только в %SYS и работает ! Как только переключаюсь в другую область, перестает отвечать на программы что в этой области. Думал может подход особый нужен для этого. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 15:18 |
|
Программа с %
|
|||
---|---|---|---|
#18+
ValeriuПонятно, я так и делаю. Но она только в %SYS и работает ! Как только переключаюсь в другую область, перестает отвечать на программы что в этой областиНе совсем понятно, что вы имели в виду, но да, если вы переключитесь на другую область, то программы из предыдущей перестанут быть видны. Объекты тоже перестанут работать, если они типов классов, которые в этой области не видны. А как должно быть? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 15:29 |
|
Программа с %
|
|||
---|---|---|---|
#18+
Блок А.Н., В GT.M немного не так, там нету области как в Каше. В Каше каждой области соответствуют какие то наборы программ и глобалов, я так понимаю. Вот, когда я переключаюсь из %SYS в USER , программы из USER не отвечают на мои запросы, хотя программа %RTName запущенная в %SYS должна удовлетворять требованиям моим запросам уже в этой области ... ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 15:39 |
|
Программа с %
|
|||
---|---|---|---|
#18+
Valeriu, Может вы используете какие то объекты, которые видны только в той области откуда запущена программа. тогда могут быть проблемы, а так код спокойно может переключаться между областями, даже с открытыми объектами, если код классов этих объектов доступен в целевой области. Какие ошибки у вас появляются? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 16:00 |
|
Программа с %
|
|||
---|---|---|---|
#18+
DAiMor, Я с обьектами вообще не работаю. Обычный М код + глобалы Ошибок никаких пока не вижу. Покопаюсь еще, может что-то сам неправильно делаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 16:19 |
|
Программа с %
|
|||
---|---|---|---|
#18+
ValeriuКак только переключаюсь в другую область, перестает отвечать на программы что в этой области.Если ошибок нет, то что значит перестает отвечать? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 17:22 |
|
Программа с %
|
|||
---|---|---|---|
#18+
ValeriuДобрый день. В Cache можно запускать программу с % в область %SYS чтобы она могла работать и для остальных областей ? (job^%RTName) Например какой-то сокет на какой то порт. Я пробовал, но почему-то работает только в той области откуда была запущена. Спасибо. В доке на команду job указано Код: plaintext
Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 18:51 |
|
Программа с %
|
|||
---|---|---|---|
#18+
ну я, Считайте, что это TCP сервер, хотя так и есть. Наподобие Вашего (interconect). Он у Вас же общий для любой области. Запускается из %SYS ??? Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
или я что то путаю ? Если не прав поправьте. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 19:24 |
|
Программа с %
|
|||
---|---|---|---|
#18+
По моему нашел. Моя функция, хотя вроде меняет область, на самом деле я остаюсь по прежнему в %SYS ... JS: Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
M: Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21.
Хотя в консоле явно получаю не область %SYS .. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 20:06 |
|
Программа с %
|
|||
---|---|---|---|
#18+
Valeriuну я, Считайте, что это TCP сервер, хотя так и есть. Наподобие Вашего (interconect). Он у Вас же общий для любой области. Запускается из %SYS ??? Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
или я что то путаю ? Если не прав поправьте. Там область с клиента прилетает. Примерно так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
Для разных М серверов выбрал делать по-разному, мне так показалось проще сделать стабильный работающий вариант. Для Cache команда znspace одно время не на всех версиях работала корректно с переключением из несистемной в системную, но точно деталей уже не припоминаю (как и положено старожилам ;)))). А для GT.M такого понятия вроде как совсем не нашел, там отдельно существуют каталог программ и каталог глобалов, устройство настроек сложное, я решил оставить это админам и программистам, пусть сами вызовут нужные переключения. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 20:49 |
|
Программа с %
|
|||
---|---|---|---|
#18+
ValeriuМоя функция, хотя вроде меняет область, на самом деле я остаюсь по прежнему в %SYS ... т.е. вы делаете через асинхронный вызов переход в другую область, а со следующим вызовом оказывается что вы не там? Я не знаю, как у вас реализован процесс для сессии, в которой происходит обработка комманд. Может у вас обработчик запросов остался в той области и не перешел, может у вас новый процесс создается под каждый запрос. А еще очень вероятно, где то может стоять new без аргументный, который все возвращает. команда new в Cache работает и для переменной $namespace которая меняется при переходе в другую область, и соответвенно при выходе вернет область обратно автоматически. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 21:37 |
|
Программа с %
|
|||
---|---|---|---|
#18+
DAiMor, Я тоже подозреваю одну из этих причин... С ВЕБ-ом я не так давно работаю и видимо не все нюансы учел. Может действительно, при каждом запросе создается новый процесс, во всяком случае, JOB-ы разные. Тогда как это можно побороть ? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.10.2018, 07:43 |
|
|
start [/forum/topic.php?fid=39&fpage=4&tid=1556236]: |
0ms |
get settings: |
12ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
30ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 146ms |
0 / 0 |