200
started
./signal5.sh: line 11: 1276 Terminated
Sigemptyset() және sigaddset() функцияларының орындалу уақыты,
өңдеудің басында өте аз. Дегенмен, егер де бұл функцияларды орындау
кезінде сигналдар түсуі мүмккін болса, онда бұл функциялардың
шақырылуын main() функциясының басына орнын ауыстыруға және
sigaddset(&sigmask, SIGINT) шақыру көмегімен, SIGINT сигналын
блоктаушы перденің қажетті мәнін қалыптастыруға болады. Сигнал
нөмірі өңдеуші параметр арқылы емес, нақты берілетін болғандықтан,
өзінің әмбебаптылығын құрбан етуі мүмкін.
10.3-сурет. Орнатылған сигналды перде кезінде процестің орындалуы
Егер процесс орындалуы жүрісін уақыт сызығында бейнелесек,
10.3- суретте көрсетілген бейнені алуға болады (екінші сигнал SIGINT
еленбейді).
Достарыңызбен бөлісу: