добавлено: 02 апр 19
понравилось:0
просмотров: 17402
комментов: 0
теги:
понравилось:0
просмотров: 17402
комментов: 0
теги:
Автор: servit
Недавно возникла интересная задача: 21847083.
Итак, необходимо перезапустить СУБД.
Для запуска команды из самой СУБД можно воспользоваться функцией $zf(-100) - новым, безопасным аналогом функций $zf(-1)/$zf(-2), например:
Но при ближайшем рассмотрении топика обнаружилось, что на самом деле автору
Для этого можно воспользоваться изменением системных флагов уровня экземпляра, для манипулирования которыми есть несколько способов, а именно:
Единственный минус данного решения - невозможность многопоточной компиляции, поскольку блокируется любой доступ к глобалам для всех процессов, кроме текущего.
Итак, необходимо перезапустить СУБД.
Для запуска команды из самой СУБД можно воспользоваться функцией $zf(-100) - новым, безопасным аналогом функций $zf(-1)/$zf(-2), например:
s cmd = "ccontrol"
s args(1) = "stopstart"
s args(2) = $p($zu(86),"*",2) ; имя экземпляра
s args(3) = "quietly"
d $ZF(-100,"/ASYNC",cmd,.args)
Но при ближайшем рассмотрении топика обнаружилось, что на самом деле автору
<...> нужно остановить все пользовательские процессы и запретить пользователям вход 21847245 |
- функции программы ^SWSET
- соответствующие методы класса %SYSTEM.Util: {Check/Get/Set}Switch()
#include %systemInclude |
Комментарии