Subprocess + popen + Thread ?

Olá. Estou usando este post como referência, mas não acho que está me ajudando.

Vendo este outro post, consegui fazer com que o Python disparasse meus comandos no Linux, mas percebi que eu não tenho controle sobre como encerrá-los quando eu quiser. De fato, eu preciso lidar com múltiplos eventos recebendo via MQTT e o método que usei me limitou quanto a isso.

Li sobre Popen, subprocess e um possível uso de Threads (em todas essas coisas eu não tenho conhecimento), mas realmente não sei se está certo o que li. A dúvida é:

Como posso disparar um comando no Linux e manter controle sobre ele?

Meu cenário atual é: Eu me inscrevo em um tópico MQTT, e ao receber mensagem, pego os parâmetros que recebi e executo um comando no Linux. Após 10 minutos ou após o recebimento de uma mensagem informando o fim do evento, devo matar o comando(nesse caso, o processo) e continuar na espera de outros eventos.

Estou iniciando em Python por agora :]

Fala @FearX, blz?!

Conseguiste resolver esta bronca? Ou encontraste algum outro caminho?

OBS.: Sei que o poste já é antigo, mas eu estava minerando no GUJ e achei esse poste.

Oi, Tuna.

O que eu fiz foi o seguinte: Criei um dicionário associando o PID do processo com a thread. Aí, quando precisava matar, só iterava o kill sobre o dicionário.

[]'s!

1 curtida

Ah, sim!

Poh que massa, bela jogada! (Gostei)
Meus parabéns :tada: :confetti_ball: