Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight
 
PerlMonks  

Re: exiting two loop levels

by VSarkiss (Monsignor)
on Sep 21, 2006 at 14:26 UTC ( #574133=note: print w/replies, xml ) Need Help??


in reply to exiting two loop levels

GrandFather and davorg have your answer above. I just wanted to add that it often reads better to label your loops with what they're iterating over, rather than their structure.

For example, say you're processing files and records line-by-line. You could do this:

OUTER: while ( $more ) { INNER: while ( $still_more ) { # ... last OUTER if $done_with_files; last INNER if $done_with_lines; } }
But it reads better with a change in labels:
FILE: while ( $more ) { LINE: while ( $still_more ) { # ... last FILE if $done_with_files; last LINE if $done_with_lines; } }

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://574133]
help
Chatterbox?
[oiskuu]: The useful bits that relate to your process can be found under /proc/self. What information are you thinking of? Tty name?
[tye]: I just daemonized and getlogin() still knew who I had been.
[tye]: perhaps loginuid ? Not that I concede that something not being in /proc means it is not useful.
[Corion]: tye: That's really interesting, but maybe it is because getlogin() returns the name, or the uid, so if that user has been replaced by another user with the same uid in the meantime, that's no problem to the system...
[davido]: or on ubuntu /var/run/utmp
[Corion]: Otherwise, I would imagine that a user with a process still alive would lock that information in memory.
[davido]: so last -f /var/run/utmp on ubuntu provides similar (though more verbose) info
[oiskuu]: glibc getlogin just does ttyname() and falls back on getutline(); it's not security related at all. (reminds me of sendmail and remote finger services of the naive early spam era)
[Corion]: But yes, "who started this process" is interesting information :)
[tye]: no, I really believe that "login user" was added as a fundamental bit of info about each process in order to enhance the usefulness of auditing

How do I use this? | Other CB clients
Other Users?
Others pondering the Monastery: (8)
As of 2017-06-23 19:36 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    How many monitors do you use while coding?















    Results (554 votes). Check out past polls.