Hi All!
I'm pretty new to working with sockets in perl, looked around for days
for a proper solution for my IRC/DCC problem but couldn't find one.
The connection to the server uses a socket with a neverending while
loop:
sub connection {
# Make The Initial Server Connection! #
$con = IO::Socket::INET->new(PeerAddr=>"$server",
PeerPort=>"$port",
Proto=>'tcp',
Timeout=>'30') || print "Error! $!\n";
while($answer = <$con>) {
<http://www.perlmonks.org/?abspart=1;displaytype=displaycode;node_id=718
388;part=1>
All works fine untill i want to make a DCC connection using another
socket:
$dcc = IO::Socket::INET->new(PeerAddr=>"$2",
PeerPort=>"$3",
Proto=>'tcp',
Timeout=>'30') || print "Error! $!\n";
print $dcc "Connection Established!\n";
while ($talk = <$dcc>) {
<http://www.perlmonks.org/?abspart=1;displaytype=displaycode;node_id=718
388;part=2>
The first loop is being blocked?
I only receive input/output from the second loop untill this one is
closed again, then the first loop continues....
How can i get a continuous flow from both?
I've read some bits about IO::Socket::Select, and have also been playing
with multiple threads, but i prefer the first option... Any help is very
appreciated!
-
Marco van Kammen
Springer
System Manager & Postmaster
-
Van Godewijckstraat 30 | 3311 GX
Office Number: 05E21
P.O. Box 17 | 3300 AA
Dordrecht | The Netherlands
tel +31 (0) 78 657 6446
fax +31 (0) 78 657 6302
[EMAIL PROTECTED]
www.springer.com <http://www.springer.com/>
-