Довідник по Perl Функції для роботи з процесами та групами процесів

дивимося також

Матеріал із Довідник Web-мов

Зміст

Визначає кількість секунд (параметр СЕКУНДИ), через який має бути виданий сигнал SIGALARM. Якщо параметр відсутній, використовується значення спеціальної змінної $_.

Виконує задану параметром СПИСОК команду, припиняючи подальше виконання програми Perl. Ніколи не повертає коду повернення виконання команди, тільки якщо команда не існує, повертає булеве значення Брехня. Якщо СПИСОК складається з більш ніж одного елемента, викликає системну команду execvp(3) і передає їй як параметри значення списку, яка викликає задану першим елементом списку команду, інтерпретуючи елементи, що залишилися, як її параметри. Якщо список представлений однією скалярною змінною або масивом з одного елемента, його значення перевіряється на наявність метасимволів командного інтерпретатора shell. Якщо такі виявлені, весь рядок передається аналізатору shell(в Unix це /bin/sh -c); в іншому випадку вона розбивається на слова і передається як параметр системної команди execvp(). У системній змінній $0 зберігається ім'я команди, що виконується. У формі з параметром ПРОГРАМА виконує команду, задану цим параметром, а системну змінну $0 заноситься вміст першого елемента списку. Таким чином можна приховати від програми Perl ім'я справжньої команди, що виконується.

Здійснює виклик системної функції fork(2), що створює новий процес. Повертає ідентифікатор породженого процесу у батьківський процес, значення 0 у породжений процес та невизначене значення undef, якщо не вдалося створити новий процес.

Повертає поточну групу процесу із заданимідентифікатор PID. Якщо значення PID дорівнює 0, або він опущений, то повертається поточна група поточного процесу.

Повертає ідентифікатор процесу (ID) батьківського процесу.

getpriority

Повертає поточний пріоритет процесу, групи процесу чи користувача.

Надсилає сигнал процесам, визначеним у елементах списку параметра СПИСОК. Першим елементом списку повинен бути сигнал, що посилається; якщо він негативний, то знищуються групи процесів, а чи не самі процеси. Повертає кількість процесів, яким передано сигнал.

Відкриває пару з'єднаних дескрипторів файлів утворюючи програмний канал (pipe). Записані в один файл дані можна прочитати з іншого. При передачі даних використовуються буфери стандартної системи вводу/виводу stdio.

Встановлює для процесу із заданим ідентифікатором (параметр PID) поточну групу, що дорівнює значенням параметра PGRP. Значення 0 ідентифікатора процесу відповідає поточному процесу. Якщо обидва параметри опущені, за замовчуванням їх значення приймаються рівними 0.

setpriority

Встановлює пріоритет процесу, групи процесу або користувача.

Припиняє роботу програми Perl на задане значенням параметра ВИРАЗ кількість секунд або на завжди, якщо параметр відсутній. Виходить із стану очікування раніше вказаного часу, якщо процес отримує сигнал GIGALARM. Повертає дійсну кількість секунд знаходження програми у стані очікування.

Аналогічна функції exec(), але виконання команди породжує новий процес, закінчення якого очікує батьківський процес, як продовжити своє виконання. Все, що сказано щодо параметрів функції exec(), поширюється на параметри функції system(). Повертає такийж код завершення команди, як і функція wait(); для отримання істинного коду завершення, отримане значення слід розділити на 256.

Повертає чотириелементний список, що містить користувальницький та системний час для процесу та породженого ним процесу.

Очікує завершення породженого процесу та повертає ідентифікатор завершеного породженого процесу або -1, якщо породжених процесів не існує. У спеціальній змінній $? зберігається статус завершення.

Очікує завершення процесу із заданим у параметрі PID ідентифікатором процесу (-1 означає будь-який процес) та повертає ідентифікатор завершеного породженого процесу або -1 у разі, якщо породжених процесів не існує. Параметр FLAGS представляє набір прапорів, які уточнюють дію функції. Наприклад, прапор WHOANG означає, що не блокує очікування завершення будь-якого процесу. У всіх системах реалізовано прапор 0, що означає блокуючий виклик. У спеціальній змінній $? зберігається статус завершення.