in reply to Re^5: Shared variables between threads
in thread Shared variables between threads
And the output:#!/usr/bin/perl use strict; use warnings; use threads; use threads::shared; use Net::Pcap; my $err; my $dev = Net::Pcap::lookupdev(\&err); my ($address,$netmask); Net::Pcap::lookupnet($dev,\$address,\$netmask,\$err); my $filter; print "threads version -> ".$threads::VERSION." threads::shared versio +n -> ".$threads::shared::VERSION."\n"; my $capobj:shared = &share(Net::Pcap::open_live($dev,1024,0,0,\$err)) +; print "shared $capobj\n"; my $capthread = threads->new(\&capture); sleep 5; Net::Pcap::breakloop($capobj); print "$capobj breakloop\n"; $capthread->join(); print "Capture thread finalized\n"; sub capture { print "capture->$capobj\n"; Net::Pcap::compile($capobj,\$filter,'host XX.XX.XX.XX && port +7777 && udp',1,$netmask); Net::Pcap::setfilter($capobj,$filter); Net::Pcap::loop($capobj,0,\&capture_callback, 0); print "Outside the loop\n"; Net::Pcap::close($capobj); } sub capture_callback { }
$perl test3.pl threads version -> 1.67 threads::shared version -> 1.14 shared pcap_tPtr=SCALAR(0x8ee08f8) capture->pcap_tPtr=SCALAR(0x8f223b4)
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^7: Shared variables between threads
by BrowserUk (Patriarch) on Nov 05, 2007 at 12:05 UTC | |
by Saladino (Beadle) on Nov 05, 2007 at 12:19 UTC | |
by BrowserUk (Patriarch) on Nov 05, 2007 at 12:51 UTC | |
by Saladino (Beadle) on Nov 05, 2007 at 13:49 UTC |