import{_ as a,c as i,a3 as t,o as l}from"./chunks/framework.CUlkWZrb.js";const c=JSON.parse('{"title":"Процесс / Process","description":"","frontmatter":{"outline":[2,3]},"headers":[],"relativePath":"syntax/Process.md","filePath":"syntax/Process.md"}'),n={name:"syntax/Process.md"};function e(h,s,r,p,k,d){return l(),i("div",null,s[0]||(s[0]=[t(`
Позволяет управлять процессом операционной системы. Получать текст из стандартных потоков, проверять активность, pid, завершать процесс и т.п.
Устанавливает кодировку в которой будут считываться стандартные потоки вывода и ошибок.
ПотокВыводаТекста. Стандартный поток вывода (stdout) в методе "Завершен" смотрите пример правильной обработки цикла ожидания завершения процесса:
ПотокВыводаТекста. Стандартный поток вывода ошибок (stderr) в методе "Завершен" смотрите пример правильной обработки цикла ожидания завершения процесса:
ПотокВводаТекста. Стандартный поток ввода (stdin)
Флаг указывает, что процесс завершен (или нет)
// Пример правильной обработки цикла ожидания завершения процесса:
// Процесс не завершается, пока любой из потоков (stdout, stderr) открыт для чтения.
// Процесс висит и ждет, пока его освободят от текста в обоих потоках.
Пока НЕ Процесс.Завершен ИЛИ Процесс.ПотокВывода.ЕстьДанные ИЛИ Процесс.ПотокОшибок.ЕстьДанные Цикл
Если ПериодОпросаВМиллисекундах <> 0 Тогда
Приостановить(ПериодОпросаВМиллисекундах);
КонецЕсли;
ОчереднаяСтрокаВывода = Процесс.ПотокВывода.Прочитать();
ОчереднаяСтрокаОшибок = Процесс.ПотокОшибок.Прочитать();
Если Не ПустаяСтрока(ОчереднаяСтрокаВывода) Тогда
Сообщить(ОчереднаяСтрокаВывода, СтатусСообщения.Информация);
КонецЕсли;
Если Не ПустаяСтрока(ОчереднаяСтрокаОшибок) Тогда
Сообщить(ОчереднаяСтрокаОшибок, СтатусСообщения.Важное);
КонецЕсли;
КонецЦикла;Код возврата завершенного процесса.
PID процесса
Запустить процесс на выполнение. в методе "Завершен" смотрите пример правильной обработки цикла ожидания завершения процесса:
Приостановить выполнение скрипта и ожидать завершения процесса.
Булево. Ложь, если таймаут истек.