IPC (предают коммуникацию процесса земле) между Python и Java

Во-первых, немного объяснения того, почему я задаю этот вопрос во-первых: я пишу программу Python (с wxPython gui), который должен назвать Java программой AWT от данных Python и извлечения из него. У меня есть незавершенное рабочее решение в Windows. У меня также есть незавершенное решение на OSX, пока я запускаю бездисплейное приложение Java. К сожалению, нет никакого разумного решения, которое я нашел для выполнения обоих графический интерфейсов пользователя в рамках того же процесса на OSX, потому что и AWT и WX и хотят первый поток и не могут совместно использовать цикл сообщения wx.

То, что я хотел бы сделать, должно запустить программу Java в отдельном процессе из моей программы Python и установить канал или очередь или что-то для передающих данных (специфически массивы байтов) назад и вперед.

Я был бы очень признателен за любые предложения или даже пошаговое перемещение в правильном направлении, поскольку у меня есть очень мало опыта с IPC.

14
задан Adam Fraser 28 July 2010 в 19:16
поделиться

2 ответа

3
ответ дан 1 December 2019 в 15:11
поделиться

Используйте subprocess.Popen , чтобы запустить процесс Java и установить каналы для связи с ним. Для эффективной сериализации и десериализации данных независимым от языка, платформой и расширяемым способом, взгляните на Protocol Buffers (предоставлено Jon Skeet !).

1
ответ дан 1 December 2019 в 15:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: