Beefy Boxes and Bandwidth Generously Provided by pair Networks
good chemistry is complicated,
and a little bit messy -LW
 
PerlMonks  

socket help

by nagalenoj (Friar)
on Apr 23, 2010 at 12:14 UTC ( #836510=perlquestion: print w/ replies, xml ) Need Help??
nagalenoj has asked for the wisdom of the Perl Monks concerning the following question:

The following code isn't working. What is wrong?
use IO::Socket::INET; use IO::Select; my ($sckt_one, $sckt_two, $s); $sckt_one = IO::Socket::INET->new ( PeerAddr => "localhost", PeerPort=> 9000, Proto => "tcp", Type => SOCK_STREAM ); die "Could not create socket:1: $!\n" unless $sckt_one; $sckt_two = IO::Socket::INET->new ( PeerAddr => "localhost", PeerPort=> 9001, Proto => "tcp", Type => SOCK_STREAM ); die "Could not create socket:2: $!\n" unless $sckt_two; $s = IO::Select->new($sckt_one, $sckt_two); while(@ready = $s->can_read) { foreach $fh (@ready) { print <$fh>; } }

Comment on socket help
Download Code
Re: socket help
by nagalenoj (Friar) on Apr 23, 2010 at 12:16 UTC
    Sorry! Posted in curiosity. But, now I've found. It is because of
    print <$fh>;
    Need to do like this.
    $var = <fh>; print $var;

    When we do something like 'print <fh>' it reads till EOF and prints entire content. Since, I've tried in sockets, I wouldn't have received EOF. So, the above code didn't work as expected.

      FWIW, this could also be achieved by saying

      print scalar <$fh>;

      (the <> operator (aka readline) behaves differently depending on context — which by default is "list" with print)

      I'm glad you figured it out. For reference in the future, it helps a lot if you can specify what your expected results are, and what your actual results are, to help diagnose the problem.

      Good job on fixing it though!

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://836510]
Approved by almut
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others about the Monastery: (11)
As of 2014-12-19 13:01 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    Is guessing a good strategy for surviving in the IT business?





    Results (82 votes), past polls