Ich habe zwei Python-Anwendungen. Ich muss Befehle und Daten zwischen ihnen senden (zwischen zwei Prozessen). Was ist der beste Weg, das zu tun?
Ein Programm ist ein Daemon, der Befehle und Parameter von einer anderen GUI-Anwendung akzeptieren sollte.
Wie kann ich Daemon dazu bringen, Befehle von der GUI aus zu überwachen, während er seinen Job macht? Ich bevorzuge Lösung wäre Crossplatform.
ps. Ich benutze pyqt4 und python.
Sie können die folgenden Methoden für den Datenaustausch verwenden:
Socket-Programmierung: In Qt können Sie auf das QtNetwork-Modul zugreifen. Beispiele finden Sie unter qt assistant
IPC: Verwenden Sie den gemeinsam genutzten Speicher, der in der QSharedMemory-Klasse implementiert ist.
Wenn diese Anwendung nur unter Unix-Betriebssystemen ausgeführt wird, können Sie eine Posix-basierte Nachrichtenwarteschlange usw. für den Datenaustausch verwenden
DBUS: Sie werden feststellen, dass sowohl Python als auch Qt DBus-basierte Unterstützung haben. Im Fall von Python müssen Sie das entsprechende Modul finden.
Verwenden des Multi Processing-Moduls
Verwendung von Posix / SystemV-basierten IPC-Mechanismen, wie Pipes, Queue usw.