[SP-pm] destruir um objeto e die
Frederico Recsky
frederico at gmail.com
Mon Dec 15 06:14:59 PST 2008
Olá,
Tenho um modulo que monta e desmonta unidades de disco conforme o necessario.
Para montar eu depois de criar um objeto e rodo uma função que checa o
status do mount e etc. Para desmontar eu coloquei no DESTROY, assim
que eu não preciso mais da montagem ou quando saio do programa ele
desmonta a unidade.
O que acontece é que se outro trecho do programa usa die, croak ou
etc, e o DESTROY do modulo de montagem consegue desmontar as coisas,
ele sai com erro 0. É obvio que eu não queria isso. Abaixo vai uma
versão simplificada do que eu estou falando.
Package Mount;
use strict;
use warnings;
sub new {
my $class = shift;
my $self = {};
bless($self,$class);
$self->{SOURCE} = shift;
$self->{DEST} = shift;
$self->{RET} = _mount($self);
return $self;
}
sub _mount {
my $self = shift;
my $cmd = qx/ mount $self->{SOURCE} $self->{DEST}/;
}
sub DESTROY {
my $self = shift;
my $cmd = qx / umount $self->{DEST} /;
}
Mesmo assim é importante limpar as montagens feitas se ocorrer um die,
aceito sugestões.
[]'s
--
____________________________
Frederico Recsky
Linux User: #253572
http://www.fred.eti.br
http://www.perl.org.br
More information about the SaoPaulo-pm
mailing list