Mutex.IsProcessActive

From SunFlurry wiki
Jump to: navigation, search
  IsProcessActive (Работа с подчиненными процессами)
Объект:Семафор
Статус разработки: Реализована
Тип:Функция
Обращение к БД:Нет
Исключения:Неверный объект
Визуальность:Нет

Функция проверяет, активен ли (не завершился ли) адресуемый текущим объектом подчиненный процесс.

Синтаксис

Mutex.IsProcessActive():<Активен ли подчиненный процесс (INT)>

Возвращаемое значение

Возвращает 1, если процесс в данный момент активен, 0 в другом случае.

Примеры

  Function ИсполнитьВДругомПроцессе(спДанные,ByRef Переменная,ByRef Переменная2=0)
    спДанные["Значение"]:=10;
    Переменная:=20;
    Переменная2:=30;
    Result:=40;
  EndFunction

аПроцесс:=Mutex.InitializeSeparateProcess();

спДанные:=List.Create();
спДанные["Значение"]:=1;
Переменная:=2;
аПроцесс.InterProcessExecuteFunction("ИсполнитьВДругомПроцессе",спДанные,Переменная);
//Будет выведено 1
Message("Процесс активен: "+аПроцесс.IsProcessActive);
//Завершим процесс
аПроцесс.TerminateProcess(1);
//Будет выведено 0 (обычно)
Message("Процесс активен: "+аПроцесс.IsProcessActive);
//Вызов функции создаст исключение
аПроцесс.InterProcessExecuteFunction("ИсполнитьВДругомПроцессе",спДанные,Переменная);