Beefy Boxes and Bandwidth Generously Provided by pair Networks Joe
"be consistent"
 
PerlMonks  

(tye)Re: open, sleep, & print together cause an error

by tye (Cardinal)
on Feb 10, 2001 at 04:12 UTC ( #57528=note: print w/ replies, xml ) Need Help??


in reply to open, sleep, & print together cause an error

Well, yes, if you are open to sleeping "together" and it ends up in print, well, it can cause more than an "error"... (:

Seriously though, $|++ only makes the currently selected output file handle non-buffering (STDOUT, by default). You can do the Perl4-ish thing (updated slightly to use my):

{ my $selected= select(LOG); $|++; # Unbuffer output to LOG select( $selected ); }

Or you can do:

require IO::Handle; LOG->autoflush(1);

which accomplishes the same thing.

        - tye (but my friends call me "Tye")


Comment on (tye)Re: open, sleep, & print together cause an error
Select or Download Code
Re: (tye)Re: open, sleep, & print together cause an error
by zeno (Friar) on Feb 10, 2001 at 04:19 UTC

    tye, you are a smart, smart person. That worked. Here's what I ended up with:

    use strict; use warnings; require IO::Handle; # <--- new open LOG,">foo.log" or die "can't open foo.log: $!"; <b>LOG->autoflush(1);</b> # <--- new while(1) { print LOG (localtime).": something\n"; sleep(5); }

    Thanks a lot for your help, tye. -zeno

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others surveying the Monastery: (7)
As of 2014-04-20 11:14 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    April first is:







    Results (485 votes), past polls