Каков лучший подход для IPC между Java и C++?

Вы можете использовать это:

TimeSpan time = TimeSpan.FromSeconds(i);
textBox1.Text = time.ToString(@"hh\:mm\:ss");
12
задан 4 October 2008 в 03:41
поделиться

5 ответов

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

Абстракция устойчива, хорошо поддерживаемая и не будет иметь никаких проблем interop.

9
ответ дан 2 December 2019 в 19:56
поделиться

Вы рассмотрели платформу Экономии Facebook?

Экономия является платформой программного обеспечения для масштабируемой межъязыковой сервисной разработки. Это комбинирует программный стек с механизмом генерации кода для создания сервисов, которые работают эффективно и беспрепятственно между C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Какао, Smalltalk и OCaml.

Экономия позволяет Вам определять типы данных и сервисные интерфейсы в простом файле определения. Беря тот файл в качестве входа, компилятор генерирует код, который будет использоваться для легкого создания клиентов и серверов RPC, которые связываются беспрепятственно через языки программирования.

Это может работать по сокетам TCP, и сериализация/десериализация уже встроена.

Прочитайте техническое описание для деталей.

4
ответ дан 2 December 2019 в 19:56
поделиться

Буфер протокола Google может помочь Вам сериализировать данные на языке и независимом от платформы пути. Это также сгенерирует код в Java и C++ для обработки чтения и записи сериализированных данных. Можно затем использовать любой механизм связи, который Вы хотите отправить данным. Например, Вы могли отправить его по сокету TCP или через общую память IPC.

4
ответ дан 2 December 2019 в 19:56
поделиться

mmm - DLLs не являются процессами, таким образом, я предполагаю, что Вы имеете в виду IPC между своим приложением Java и некоторым другим исходным приложением, которое связано с DLL. Сокеты, наверняка, являются способом пойти сюда. Это сделает все легче для Вас.

Другая опция состояла бы в том, чтобы использовать JNI, чтобы говорить с реализацией DCOM, но я не думаю, что Вы получите много (кроме необходимости иметь дело с головными болями COM и JNI :-)).

0
ответ дан 2 December 2019 в 19:56
поделиться

Я ищу Remote Call Framework для моих приложений, работающих исключительно на C ++. Характеристики выглядят красиво и многообещающе. Я собираюсь попробовать.

0
ответ дан 2 December 2019 в 19:56
поделиться
Другие вопросы по тегам:

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