<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: обработка сигналов в перл</title>
    <link>https://slinkov.ru/openforum/vsluhforumID9/7297.html</link>
    <description>добрый день.&lt;br&gt;возникла следующая проблемма:&lt;br&gt;есть перл скрипт примерно следующего содержания:&lt;br&gt;#!/usr/bin/perl&lt;br&gt;use strict;&lt;br&gt;$SIG&#123;&apos;INT&apos;&#125;  = &apos;IGNORE&apos;;&lt;br&gt;$SIG&#123;&apos;TERM&apos;&#125; = &apos;IGNORE&apos;;&lt;br&gt;$SIG&#123;&apos;HUP&apos;&#125;  = &apos;IGNORE&apos;;&lt;br&gt;$SIG&#123;&apos;TSTP&apos;&#125; = &apos;IGNORE&apos;;&lt;br&gt;$SIG&#123;&apos;QUIT&apos;&#125; = &apos;IGNORE&apos;;&lt;br&gt;system(&quot;./signalsUtil.sh&quot;);&lt;br&gt;вызываемый из перла баш скрипт&lt;br&gt;$cat signalsUtil.sh&lt;br&gt;#!/bin/sh&lt;br&gt;start()&lt;br&gt;&#123;&lt;br&gt;   ./to4ki.sh &amp;&lt;br&gt;   PIDS=$!&lt;br&gt;&#125;&lt;br&gt;stop()&lt;br&gt;&#123;&lt;br&gt;   if &#091; $&#123;PIDS&#125; -ne -2 &#093;; then&lt;br&gt;      kill -15 $&#123;PIDS&#125;&lt;br&gt;      PIDS=-2&lt;br&gt;   fi&lt;br&gt;&#125;&lt;br&gt;start&lt;br&gt;echo &quot;start with $PIDS&quot;&lt;br&gt;sleep 7&lt;br&gt;stop&lt;br&gt;&lt;br&gt;и $cat to4ki.sh&lt;br&gt;#!/bin/sh&lt;br&gt;trap  &apos;trap &quot;&quot; 15; echo &quot;&quot;; exit 0&apos; 15&lt;br&gt;&lt;br&gt;while true&lt;br&gt;do&lt;br&gt;  sleep 1&lt;br&gt;    echo -n &quot;.&quot;&lt;br&gt;done&lt;br&gt;&lt;br&gt;exit 0&lt;br&gt;&lt;br&gt;проблемма в следующем, форкнутые от перла процессы наследуют игнорирование сигналов и в скрипте signalsUtil.sh не срабатывает kill -15 и точки рисуются вечно. как можно это починить, кроме как использовать kill -9? например, возможно ли сказать перл скрипту, что он и только он игнорирует сигналы, а форкнутые процессы обрабатывают их в обычном порядке.&lt;br&gt;&lt;br&gt;за</description>

<item>
    <title>обработка сигналов в перл (iliya)</title>
    <link>https://slinkov.ru/openforum/vsluhforumID9/7297.html#2</link>
    <pubDate>Tue, 08 Apr 2008 10:31:58 GMT</pubDate>
    <description>&amp;gt;&#091;оверквотинг удален&#093;&lt;br&gt;&amp;gt;первое: &lt;br&gt;&amp;gt;в программ стартере написать: &lt;br&gt;&amp;gt;sub ignore &#123; &lt;br&gt;&amp;gt;    print &quot;Get INTTERM, ignore!&#092;n&quot;; &lt;br&gt;&amp;gt;&#125; &lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;$SIG&#123;&apos;TERM&apos;&#125; = &#092;&amp;ignore; &lt;br&gt;&amp;gt;тогда в баше будет устанавливаться трап и нормально срабатывать. а о том &lt;br&gt;&amp;gt;устанавливается он или нет можно судить по команде &lt;br&gt;&amp;gt;trap -p &lt;br&gt;&lt;br&gt;огромное спасибо :) все вылечилось :)&lt;br&gt;как мнгого я еще не знаю :)&lt;br&gt;</description>
</item>

<item>
    <title>обработка сигналов в перл (NuINu)</title>
    <link>https://slinkov.ru/openforum/vsluhforumID9/7297.html#1</link>
    <pubDate>Tue, 08 Apr 2008 08:32:14 GMT</pubDate>
    <description>&amp;gt;добрый день. &lt;br&gt;&amp;gt;возникла следующая проблемма: &lt;br&gt;&amp;gt;есть перл скрипт примерно следующего содержания: &lt;br&gt;&amp;gt;заранее спасибо &lt;br&gt;&lt;br&gt;я вижу два пути:&lt;br&gt;первое: &lt;br&gt;в программ стартере написать:&lt;br&gt;sub ignore &#123;&lt;br&gt;    print &quot;Get INTTERM, ignore!&#092;n&quot;;&lt;br&gt;&#125;&lt;br&gt;&lt;br&gt;$SIG&#123;&apos;TERM&apos;&#125; = &#092;&amp;ignore;&lt;br&gt;тогда в баше будет устанавливаться трап и нормально срабатывать. а о том устанавливается он или нет можно судить по команде &lt;br&gt;trap -p&lt;br&gt;&lt;br&gt;второе:&lt;br&gt;заменить программу точки.sh на программу точки.pl&lt;br&gt;#!/usr/bin/perl&lt;br&gt;&lt;br&gt;use strict;&lt;br&gt;use IO::Handle;&lt;br&gt;&lt;br&gt;sub stop &#123;&lt;br&gt;    print &quot;Get INTTERM, quit!&#092;n&quot;;&lt;br&gt;    exit(0);&lt;br&gt;&#125;&lt;br&gt;&lt;br&gt;$SIG&#123;&apos;TERM&apos;&#125; = &#092;&amp;stop;&lt;br&gt;&lt;br&gt;STDOUT-&amp;gt;autoflush(1);&lt;br&gt;&lt;br&gt;while (1) &#123;&lt;br&gt;    print  &quot;.&quot;;&lt;br&gt;    sleep (1);&lt;br&gt;&#125;&lt;br&gt;exit(0);&lt;br&gt;&lt;br&gt;в отличии от баша перл нормально выставит обработчик сигнала.&lt;br&gt;</description>
</item>

</channel>
</rss>
