I was coming back to perl coding recently, and I have doubts about a couple of things concerning "exiting my program with die or exit while another file is opened".
I finished writing a ~1k lines script which is "reading files, checking stuffs, reporting errors with print() and exiting in case of blocking error" and I figured I had to add a log file to make it easier to use.
My 2 questions are :
1/ What is the best way to deal with it? I already thought about it and cam with several ideas:
- write a subroutine print_log() to replace my print() information text. The drawback of it is that the log file is opened and closed a lot of time and I'm afraid about performances
- use a global filehandle and close the file at the very end of the program. The drawback here is that I've always heard "close what you open", so I'm not sure what would happen if my program exits before my close() command because of other reasons such as another file that cannot be opened (the famous "open $bar or die")
2/ Is it really a problem to have one file left opened before exiting the program? (is it dangerous?)
I probably miss easier solutions to deal with log file writing, and I am eager to learn any good habit to make my code better.
Thank you
In reply to die command while other files are opened by hatz
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |