Nachricht/ String an laufende Python-Anwendung schicken.

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
PSaR
User
Beiträge: 4
Registriert: Sonntag 13. April 2014, 22:38

Hallo,

ich habe ein Python-Script (A) geschrieben, welches die ganze Zeit, sozusagen als "Server" läuft und einen String anpasst und dann sendet. Ich brauche nun irgendeine Möglichkeit, wie ich neue Daten an das laufende Programm senden kann (es sollte möglichst ein String sein). Das senden an Script A soll ein 2. Script (B) übernehmen, das nach dem Absenden wieder beendet wird.
Ich habe mir schonmal das Modul subprocess angesehen, aber das ist glaube ich nicht geeignet, wenn ich das richtig verstanden habe müsste Script A dann ja den Subprocess selbst starten. Wie kann ich mein Ziel trotzdem erreichen? Ich habe auch schon überlegt über TCP das ganze Abzuwickeln, aber das ist eigentlich nicht notwendig, da beide Scripte auf dem selben PC laufen.

Würde mich über Antworten sehr freuen
Gruß
PSaR
BlackJack

@PSaR: Naja, was heisst nicht notwendig. Du kannst zwar auch andere Formen der Interprozesskommunikation verwenden, aber TCP ist plattformunabhängig und wird üblicherweise für Server verwendet. Du kannst natürlich auch andere Varianten wie benannte Pipes unter Unix verwenden, oder irgendwelche anderen exotischen Sachen.
PSaR
User
Beiträge: 4
Registriert: Sonntag 13. April 2014, 22:38

BlackJack hat geschrieben:@PSaR: Naja, was heisst nicht notwendig. Du kannst zwar auch andere Formen der Interprozesskommunikation verwenden, aber TCP ist plattformunabhängig und wird üblicherweise für Server verwendet. Du kannst natürlich auch andere Varianten wie benannte Pipes unter Unix verwenden, oder irgendwelche anderen exotischen Sachen.
Danke für die Antwort. Ok, also ist das der Standardweg für mein Vorhaben? Ich hätte gedacht, dass es noch andere Wege als "Best Practice" gibt, aber wenn nicht, dann mache ich das über TCP. So aus Interesse, welche Möglichkeiten habe ich denn sonst noch, außer den genannten named Pipes?

Gruß
PSaR
BlackJack

Je nach System gibt es noch „shared memory” und „message queues” (System V IPC/Posix IPC) und Lösungen wie ZeroMQ, RabbitMQ, und Co.
Antworten