Ich habe ein C++ - Programm, das zwei Instanzen eines Python-Programms in separaten Prozessen startet. Ich habe ein Problem im Python-Programm, das dazu führt, dass keine Logging-Informationen angezeigt werden. Die Python-Programminstanzen kommunizieren mit dem C++ - Programm über Stdin und Stdout/Stderr. Ich möchte, wenn möglich, eine Instanz des Programms unter dem Pydev-Debugger ausführen, da sich das C++ - Programm beschwert, ungültige Eingaben von beiden Python-Programmen erhalten zu haben. Das Python-Programm kann nichts ohne die Kommunikation mit dem C++ - Programm tun, so dass die isolierte Ausführung des Python-Programms nicht hilft.pydev debug Python-Programm von einem anderen Programm gestartet
Da Stdin und Stdout für die Kommunikation zwischen Prozessen verwendet werden, kann ich print() -Anweisungen nicht verwenden, sondern muss Python-Protokollierung verwenden, aber das Programm scheint abzustürzen, bevor irgendetwas die Protokolldatei erreichen kann. Das Python-Programm hat vor meinen letzten Änderungen gearbeitet, so dass die Architektur in Ordnung ist.
Irgendwelche Vorschläge?
Das Problem dabei ist, dass der Python-Code schnell ausgeführt wird und wahrscheinlich beendet hätte, bevor ich die Verbindung herstellen konnte, besonders wenn ich ein Problem in den frühen Stadien der Ausführung habe. Aber, danke für den Vorschlag. – Jonathan
Nun, der Debugger würde an dem manuellen Breakpoint anhalten, den Sie tun, also sollte er an dieser Stelle stoppen, unabhängig von der Geschwindigkeit des Codes (es sei denn, Sie töten ihn, wenn es zu lange dauert). –