Como gerar um novo processo independente em Python
Eu tenho um código Python que, ocasionalmente, precisa abranger um novo processo para executar um script de shell de uma forma "disparar e esquecer", ou seja, sem bloqueio. O script de shell não se comunicará com o código Python original e, de fato, provavelmente encerrará o processo de chamada Python, portanto, o script de shell iniciado não pode ser um processo filho do processo Python de chamada. Eu preciso que seja lançado como um processo independente.
Em outras palavras, digamos que eu tenha mycode.py e que gere script.sh. Então mycode.py continuará processando sem bloquear. O script script.sh fará algumas coisas de forma independente e, na verdade, irá parar e reiniciar o mycode.py. Portanto, o processo que executa script.py deve ser completamente independente de mycode.py. Como exatamente posso fazer isso? Acho subprocess.Popen não irá bloquear, mas ainda vai criar um processo filho que termina assim que mycode.py pára, que não é o que eu quero.