Sometimes I run many instances of a python script simultaneously. To do it anagrammatically I use tmux
(a terminal multiplexer), and when I fill I'm done, or I when I have to fix something, then I kill the tmux
session instead of exiting each of the (up to 100) script manually.
Killing the tmux
session actually kills the bash
processes which are parents of the python
processes that were executed from them. If I understand correctly, it means a SIGHUP
signal is sent to all of the python
processes.
It cleans everything quite quickly - memory is freed (it seems), cpu is freed, sockets are closed and apparently ports are freed. The advantage is that it is a much quicker and simpler task than exiting each of the scripts.
My question is: are there any possible consequences to such a habit? If I don't care about the output of the script itself - may it cause any other damage, such as making the OS dirtier, heavier, etc? Is there a better practice?
The SIGHUP
handler is called. If no SIGHUP
handler is installed, then the default action as shown by the signal(7)
man page is invoked.
To be certain that your scripts close all files, release all resources, etc., install a SIGHUP
handler that performs the appropriate actions.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.