2010-07-29 9 views
5

Ho un programma python che è in esecuzione come un demone su Linux.tra programmi python

Come inviare a questo demone un segnale da un altro programma python?

risposta

4

Usa os.kill per mandare segnali. I segnali sono definiti nel modulo signal. Avrai solo bisogno di ottenere il pid del demone in qualche modo.

Un'altra cosa: è possibile utilizzare il modulo di segnale per registrare anche i gestori di segnale.

1
  • Il daemon può disporre di un socket (di rete) aperto, in cui accetta i comandi.
  • Potrebbe monitorare le modifiche in un file.

Qualsiasi altro tipo di segnalazione è possibile, ma probabilmente questo è il più comune.

+0

grazie, lo so .. ma sarebbe complesso per le mie esigenze .. cercando un modo più semplice (magari con modulo di segnale) .. –

3

Se hai bisogno di qualcosa di più sofisticato di segnali semplici, considera l'utilizzo di una libreria RPC come PYRO. Il vantaggio di questo è che puoi usarlo anche se devi spostare i tuoi processi su server separati.

Oppure, se si preferiscono principalmente i sistemi Linux di destinazione, utilizzare invece lo DBUS. C'è una libreria Python ed è ora supportata anche su Windows.