ravi6289 has asked for the wisdom of the Perl Monks concerning the following question:
Hello everybody ,,
I'm a beginner in perl .I'm having a small problem with my code :
$|=1; my $myohmy : shared = 1; print "Checking .."; $thr = threads->create(\&checkdot)->detach; $thr1 = threads->create(\&psou); $thr1->join(); $myohmy = 0; sub checkdot { $|++; while ( $myohmy == 1 ) { print "."; sleep 1; } } ###### above code not relevant ##### sub psou { open (PS, "$psout |"); #### $psout is the command ####### } while (<PS>) ####### PROBLEM -> No output here #### { ..
######## It is here the problem occurs ,, the filehandle PS is not visible , I'm pretty sure it's a scoping problem , because when the "open" statement is outside the subroutine, the code after "while" works . I have also tried creating a global variable , and with the three argument open , but it doesn't work . Could you please suggest me as to how I can fix this #############
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: FILEHANDLE not visible outside subroutine
by choroba (Cardinal) on Jul 26, 2013 at 16:11 UTC | |
by ravi6289 (Initiate) on Jul 29, 2013 at 02:34 UTC |
Back to
Seekers of Perl Wisdom