Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask
 
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 making s'mores by the fire in the courtyard of the Monastery: (8)
As of 2015-07-05 13:32 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 (67 votes), past polls