Модераторы: korob2001, ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Сигналы в perl 
:(
    Опции темы
zedik38
Дата 6.9.2014, 08:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 11.12.2011

Репутация: нет
Всего: нет



Подскажите пож-та, 
если 2 сигнала надо обрабатывать определенным образом каждый, а все  остальные одинаково, то на 1й своя подпрограмма, на 2ой своя, а вот обработку всех остальных как-либо можно объединить не перечисляя каждый?
PM MAIL WWW   Вверх
tzirechnoy
Дата 6.9.2014, 09:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1173
Регистрация: 30.1.2009

Репутация: нет
Всего: 16



Вы про какие сигнал? Если про unix/posix -- то мысль одинаково обрабатывать SIGILL/SIGCONT/SIGALRM мне кажэтся несколько эклектичной. Хотя, в perldoc perlvar показан вполне очевидный способ сделать это простым перечислением списка "всех остальных".

А если про какие-то другие -- то Вы не написали, про что Вы вообще.
PM MAIL   Вверх
Pfailed
Дата 6.9.2014, 20:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 933
Регистрация: 19.7.2009

Репутация: 22
Всего: 39



Так, вроде, нельзя. Но с помощью IPC::Signal можно получить список сигналов актуальных для данной системы. Соответственно будет что-то такое
Код

#!/usr/bin/perl

use strict;
use IPC::Signal;

IPC::Signal::sig_translate_setup();
use Data::Dumper;

for my $sig (@IPC::Signal::Sig_name) {
    next if $sig eq 'HUP' || $sig eq 'INT';
    
    $SIG{$sig} = sub {
        warn "$sig catched";
        exit;
    };
}

$SIG{INT} = sub {
    warn "SIGINT";
};

$SIG{HUP} = sub {
    warn "SIGHUP";
};

warn $$;

sleep while 1;




--------------------
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl"
korob2001
sharq
  • В этом разделе обсуждаются общие вопросы по языку Perl
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0856 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.