Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?
 
PerlMonks  

Re: UDP Server doesn't receive before newline

by zwon (Monsignor)
on Dec 05, 2012 at 02:17 UTC ( #1007179=note: print w/ replies, xml ) Need Help??


in reply to UDP Server doesn't receive before newline

UDP doesn't have buffering. Buffering happens on the server side -- stdio library buffers output. Try:

print "$datagram\n";


Comment on Re: UDP Server doesn't receive before newline
Download Code
Replies are listed 'Best First'.
Re^2: UDP Server doesn't receive before newline
by nitin1704 (Sexton) on Dec 05, 2012 at 04:25 UTC
    That worked. Thanks! Why doesn't the stdio library buffer output like this when I do a normal print statement (instead of doing it like this in a socket-recv() scenario)?
      Socket is irrelevant. Try:
      perl -e'while(1) { print "Datagram"; sleep 1; }'
      check man stdio for your system. Mine (GNU/Linux) says:
      Output streams that refer to terminal devices are always line buffered by default; pending output to such streams is written automatically whenever an input stream that refers to a terminal device is read. In cases where a large amount of computation is done after printing part of a line on an output terminal, it is necessary to fflush(3) the standard output before going off and computing so that the output will appear.
        Thanks again zwon :)

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others rifling through the Monastery: (5)
As of 2015-07-30 03:24 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (269 votes), past polls