Отправка двоичных данных через IPC из C в Python - PullRequest
1 голос
/ 27 июня 2010

У меня есть программа C и программа Python на одной машине.Программа на C генерирует некоторые данные во вложенных структурах.Какая форма IPC является наилучшим способом передачи этих данных в программу python?

Сериализация в C (особенно во вложенных структурах) - это реальная возможность, насколько я слышал, из-за отсутствия библиотек сериализации.Я не очень знаком с разделяемой памятью, но я предполагаю, что форматирование структур C может быть не очень приятным для программы на python, когда речь идет о выравнивании памяти и следующих указателях.Библиотека ctype и struct, похоже, предназначена только для не вложенных структур.До сих пор я думаю следующее:

Обернуть все данные в программе на C в какой-либо формат xml или json, записать их через сокет в программу python и затем позволить программе python интерпретировать данные в формате xml / json.Выглядит очень громоздко с большим количеством накладных расходов.

Есть идеи получше?

1 Ответ

2 голосов
/ 27 июня 2010

Я думаю, что вы ответили на свой вопрос. JSON, безусловно, хороший выбор. Также не страшно сделать свою собственную сериализацию в C.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...