diff --git a/src/ScriptEngine.HostedScript/Library/ProcessContext.cs b/src/ScriptEngine.HostedScript/Library/ProcessContext.cs index 0db1f5b58..fb716f98e 100644 --- a/src/ScriptEngine.HostedScript/Library/ProcessContext.cs +++ b/src/ScriptEngine.HostedScript/Library/ProcessContext.cs @@ -52,6 +52,7 @@ public IValue OutputEncoding /// /// ПотокВыводаТекста. Стандартный поток вывода (stdout) + /// в методе "Завершен" смотрите пример правильной обработки цикла ожидания завершения процесса: /// [ContextProperty("ПотокВывода", "StdOut")] public StdTextReadStream StdOut @@ -71,6 +72,7 @@ public StdTextReadStream StdOut /// /// ПотокВыводаТекста. Стандартный поток вывода ошибок (stderr) + /// в методе "Завершен" смотрите пример правильной обработки цикла ожидания завершения процесса: /// [ContextProperty("ПотокОшибок", "StdErr")] public StdTextReadStream StdErr @@ -104,6 +106,7 @@ public StdTextWriteStream StdIn /// /// Запустить процесс на выполнение. + /// в методе "Завершен" смотрите пример правильной обработки цикла ожидания завершения процесса: /// [ContextMethod("Запустить", "Start")] public void Start() @@ -113,6 +116,24 @@ public void Start() /// /// Флаг указывает, что процесс завершен (или нет) + /// + /// Пример правильной обработки цикла ожидания завершения процесса: + /// + /// Пока НЕ Процесс.Завершен ИЛИ Процесс.ПотокВывода.ЕстьДанные ИЛИ Процесс.ПотокОшибок.ЕстьДанные Цикл + /// Если ПериодОпросаВМиллисекундах <> 0 Тогда + /// Приостановить(ПериодОпросаВМиллисекундах); + /// КонецЕсли; + /// + /// ОчереднаяСтрокаВывода = Процесс.ПотокВывода.Прочитать(); + /// ОчереднаяСтрокаОшибок = Процесс.ПотокОшибок.Прочитать(); + /// Если Не ПустаяСтрока(ОчереднаяСтрокаВывода) Тогда + /// Сообщить(ОчереднаяСтрокаВывода, СтатусСообщения.Информация); + /// КонецЕсли; + /// + /// Если Не ПустаяСтрока(ОчереднаяСтрокаОшибок) Тогда + /// Сообщить(ОчереднаяСтрокаОшибок, СтатусСообщения.Важное); + /// КонецЕсли; + /// КонецЦикла; /// [ContextProperty("Завершен","HasExited")] public bool HasExited