]> git.vpit.fr Git - perl/modules/IPC-MorseSignals.git/blobdiff - samples/try.pl
Importing IPC-MorseSignals-0.10.tar.gz
[perl/modules/IPC-MorseSignals.git] / samples / try.pl
diff --git a/samples/try.pl b/samples/try.pl
new file mode 100755 (executable)
index 0000000..68388c8
--- /dev/null
@@ -0,0 +1,32 @@
+#!/usr/bin/env perl
+
+use strict;
+use warnings;
+
+use POSIX qw/pause EXIT_SUCCESS EXIT_FAILURE/;
+
+use lib qw{blib/lib};
+
+use IPC::MorseSignals::Emitter;
+use IPC::MorseSignals::Receiver;
+
+my $pid = fork;
+if (!defined $pid) {
+ die "fork() failed : $!";
+} elsif ($pid == 0) {
+ local %SIG;
+ my $rcv = new IPC::MorseSignals::Receiver \%SIG, done => sub {
+  print STDERR "I, the child, recieved this : $_[1]\n";
+  exit EXIT_SUCCESS;
+ };
+ print STDERR "I'm $$ (the child), and I'm waiting for data...\n";
+ pause while 1;
+ exit EXIT_FAILURE;
+}
+
+print STDERR "I'm $$ (the parent), and I'm gonna send a message to my child $pid.\n";
+
+my $snd = new IPC::MorseSignals::Emitter speed => 1000;
+$snd->post("This message was sent with IPC::MorseSignals");
+$snd->send($pid);
+waitpid $pid, 0;