Spec-Zone.ru › GNU Fortran 13

8.13 ALARM — Выполнение подпрограммы через заданный интервал

Описание:

ALARM(SECONDS, HANDLER [, STATUS]) вызывает внешнюю подпрограмму HANDLER для выполнения после задержки SECONDS с помощью alarm(2) для настройки сигнала и signal(2) для его перехвата. Если задан STATUS, он вернёт количество секунд, оставшихся до выполнения ранее запланированного сигнала тревоги, или ноль, если ранее запланированного сигнала не было.

Стандарт:

Расширение GNU

Класс:

Подпрограмма

Синтаксис:

CALL ALARM(SECONDS, HANDLER [, STATUS])

Аргументы:
SECONDS Тип аргумента должен быть скалярным INTEGER. Он является INTENT(IN).
HANDLER Обработчик сигнала (INTEGER FUNCTION или SUBROUTINE) или псевдоскаляр/глобальный скаляр INTEGER. Значения скаляров могут быть либо SIG_IGN=1 для игнорирования сгенерированной тревоги, либо SIG_DFL=0 для установки действия по умолчанию. Он является INTENT(IN).
STATUS (Необязательно) STATUS должен быть скалярной переменной стандартного типа INTEGER. Он является INTENT(OUT).
Пример:
program test_alarm
  external handler_print
  integer i
  call alarm (3, handler_print, i)
  print *, i
  call sleep(10)
end program test_alarm

Это вызовет внешнюю процедуру handler_print через 3 секунды.

© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-13.3.0/gfortran/ALARM.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API