/3A7B
/9D3A
007b
<!Left::Send,{Left}
<!Right::Send,{Right}
#!/usr/bin/perl
use strict;
use Proc::Fork;
use POSIX;
chdir '/';
close $_ for *STDIN, *STDOUT, *STDERR;
run_fork {
child {
POSIX::setsid;
while(1) {
# daemon operation.
}
}
parent { exit; }
};
#!/usr/bin/perl
use AnyEvent;
use AnyEvent::Socket;
use IO::Handle;
$| = 1;
my $HOST = '192.168.1.200';
my $PORT = 9999;
tcp_server $HOST, $PORT, sub {
my ($sock, $host, $port) = @_;
autoflush $sock 1;
print "Client connected: $host($port)\n";
my $watcher; $watcher = AnyEvent->io(
fh => $sock,
poll => 'r',
cb => sub {
my $data = <$sock>;
$data =~ s/\r?\n//g;
if ($data eq 'quit') {
print "Client disconnected: $host($port)\n";
undef $watcher;
return;
}
print "$data by $host($port)\n";
print $sock "[$data]\n";
},
);
}, sub {
my ($fh, $host, $port) = @_;
print "Echo server is listening on $host($port)\n";
};
AnyEvent->condvar->recv;
#!/usr/bin/perl
use AnyEvent::Util;
my $guard1 = create_guard(1);
my $guard3 = hoge();
{
my $guard4 = create_guard(4);
}
undef $guard3;
undef $guard1;
sub hoge {
my $guard2 = create_guard(2);
return create_guard(3);
}
sub create_guard {
my ($no) = @_;
return AnyEvent::Util::guard {
warn "Destroy $no";
};
}