diff options
-rw-r--r-- | thr.pl | 26 |
1 files changed, 13 insertions, 13 deletions
@@ -16,42 +16,42 @@ my $q2=Glib::Thread::Queue->new(); threads->create( sub{ - print "sleeping\n"; + print "(1) sleeping\n"; sleep 2; - print "sending boo\n"; + print "(1) sending boo\n"; $q->enqueue('boo'); sleep 2; threads->create( sub{ - print "inserting bar & foo\n"; + print "(2) inserting bar & foo\n"; $q->insert(0,'bar'); $q->insert(1,'foo'); - print "signaling\n"; + print "(2) signaling\n"; $q->signal(); - print "signaling\n"; + print "(2) signaling\n"; $q->signal(); }); sleep 2; - print "waiting for command\n"; + print "(1) waiting for command\n"; my $cmd=$q2->dequeue; - print "got $cmd\n"; - print "sending quit"; + print "(1) got $cmd\n"; + print "(1) sending quit"; $q->enqueue('quit'); }); my $loop=Glib::MainLoop->new(); $q->add_watch(sub{ - print "waking up\n"; + print "(m) waking up\n"; my $foo=$q->dequeue(); - print "got $foo\n"; + print "(m) got $foo\n"; if ($foo eq 'quit') { - print "quitting\n"; + print "(m) quitting\n"; $loop->quit; } elsif ($foo eq 'foo') { - print "sending command\n"; + print "(m) sending command\n"; $q2->enqueue('the command'); - print "sent command\n"; + print "(m) sent command\n"; } return Glib::SOURCE_CONTINUE; }, |