_  _   ,_
/^\/^\-/ @D
~(________/ PERL.LT
|L |L
L L
Straipsniai  Funkcijos 
Funkcijos/exit - nutraukia programą
  • exit EXPR

    Prilygina EXPR ir baigia programą su ta reikšme. Pavyzdys:

        $ans = <STDIN>;
        exit 0 if $ans =~ /^[Xx]/;

    Taip pat die. Jei EXPR praleistas, programa baigiama su 0 statusu. Vienintelės visuotinai atpažįstamos EXPR reikšmės yra 0 sėkmės atveju ir 1 klaidos; kitos reikšmės yra temos interpretacijoms, priklausomai nuo aplinkos, kurioje Perl veikia. Pvz. paliekant programą su kodu 69 (EX_UNAVAILABLE) iš sendmail įeinančio pašto filtro lieps programai gražinti nepristatyta žinutę, bet tai nebūtinai visur tiesa.

    Nenaudokite exit nutraukti paprogramės, jei yra bent koks nors šansas, kad kas nors gali norėti gauti pranešimą apie klaidą. Tokiu atveiju reiktų naudoti die, kurio klaidos pranešimas gali būti sužinomas eval.

    exit() funkcija ne visada palieka programą netrukus. Ji pirmiausia iškviečia bet kokią aprašytą END paprogramę pirmiausia, bet šitos END paprogramės negali pačios nutraukti išėjimo. Kaip ir bet koks objekto destruktorius, kurį reikia iš pradžių iškviesti prieš realiai paliekant programą. Jei tai problema, galima iškviesti POSIX:_exit($status) kad išvengti END ir destruktoriaus. Žr. perlmod dėl detalių.

algirdas@perl.lt 2005.04.11 - $dabar