c java交互_C和Java程序之间的交互/通信
如果您没有找到JNI’easy’,那么您需要IPC(进程间通信)机制.因此,从您的C流程中,您可以与Java流程进行通信.
你在控制台重定向方面所做的是IPC的一种形式,实质上就是IPC.
由于你发送的内容的性质不是很清楚,很难给你一个很好的答案.但是如果您有“简单”的对象或“命令”可以轻松地序列化为简单的协议,那么您可以使用协议缓冲区等通信协议.
#include
#include
// Create an IPC enabled file
const int FileSize = 1000;
std::filebuf fbuf;
fbuf.open("cpp.out", std::ios_base::in | std::ios_base::out
| std::ios_base::trunc | std::ios_base::binary);
// Set the size
fbuf.pubseekoff(FileSize-1, std::ios_base::beg);
fbuf.sputc(0);
// use boost IPC to use the file as a memory mapped region
namespace ipc = boost::interprocess;
ipc::file_mapping out("cpp.out", ipc::read_write);
// Map the whole file with read-write permissions in this process
ipc::mapped_region region(out, ipc::read_write);
// Get the address of the mapped region
void * addr = region.get_address();
std::size_t size = region.get_size();
// Write to the memory 0x01
std::memset(addr, 0x01, size);
out.flush();
现在你的java文件可以打开’cpp.out’并像普通文件一样读取内容.
c java交互_C和Java程序之间的交互/通信相关推荐
- C# 创建、部署和调用WebService的简单示例 webservice 可以用于分布式应用程序之间的交互,和不同程序之间的交互。 概念性的东西就不说太多,下面开始创建一个简单的webservi
C# 创建.部署和调用WebService的简单示例 webservice 可以用于分布式应用程序之间的交互,和不同程序之间的交互. 概念性的东西就不说太多,下面开始创建一个简单的webservice ...
- java多线程系列八之多线程之间的交互:线程阀
注意!注意!如果代码出现乱序,请双击代码部分,则会出现排序正常的代码 1.阻塞队列BlockingQueue 先理解Queue,Deque,BlockingQueue的概念. Queue(队列):用于 ...
- java 析构函数_C++与Java的区别(一)
一,前言 网上经常看到编程语言之争,大伙儿皈依到不同门派,各自怀抱信仰,时不时还发生点儿"冲突". 这其中,C++和Java的优劣,十多年前就常吵的火热.然而时代在进步,技术在发展 ...
- Silverlight 应用程序之间在客户端通信
运行在同一台电脑上的多个 Silverlight 应用程序可以通过本地消息进行通信,通信是在客户端进行的,不需要与服务端交互.使用这一功能可以使在同一页面承载的多个 Silverlight 应用程序之 ...
- Java后台与微信小程序的数据交互
想把自己写的一个小项目转成微信小程序,主要是因为小程序比较火,而且自己想学一下小程序的东西,所以抱着初学者的心态开始了这个痛苦的旅程.看过小程序的一点视频,个人感觉和HTML,css,js差不多,甚至 ...
- 与java比较_C++与Java比较
"作为一名C++程序员,我们早已掌握了面向对象程序设计的基本概念,而且Java的语法无疑是非常熟悉的.事实上,Java本来就是从C++衍生出来的." 然而,C++和Java之间仍存 ...
- c 异常 java异常_C ++和Java中异常处理的比较
如今,几乎所有面向对象的语言都具有异常处理功能.在C ++和Java中,我们也可以获得这种功能.C ++中的异常处理和Java中的异常处理之间有一些相似之处,例如在两种语言中,我们都必须使用try-c ...
- C 多态和java多态_C与java的多态机制与区别
既然多态是面向对象的三大本质特征之一(其它两个是数据抽象和继承),那么 C++为什么不将方法调用的默认方式设置为动态绑定,而要通过关键字virtual进行标记呢?Bruce Eckel在<Thi ...
- c 调用java包_C#调用java代码(IKVMC)
参考资料:https://blog.csdn.net/threadroc/article/details/51406587 参考1:http://www.cnblogs.com/Jack-Blog/p ...
最新文章
- html中如何实现选择存储路径的功能_HTML是Web前端的基础知识,刚入门的你真的学对了吗?...
- boost::mp11::mp_flatten相关用法的测试程序
- 存储过程之like写法一
- Spark最新的两大研发方向深度学习和结构化流处理
- 什么是 CMS - Content Management System
- DB2 存储过程中执行动态SQL的两种写法
- [改善Java代码]不推荐使用binarySearch对列表进行检索
- 反射使用 非空表向空表赋值
- delphi相关文件扩展名
- Android按钮点击控制进度条,Android通过按钮和进度条实现音量调节(AudioManager)...
- Codeforces GoodBye2015 New Year and Three Musketeers Codeforces 611E(贪心)
- win10新版蓝牙驱动没有电源管理问题
- 成功之路散文连载之笨人论
- 再见面试官:单例模式有几种写法?
- vue单文件组件中引用其他组件
- anchor译中文_anchor是什么意思中文翻译
- A-Level CS 计算机科学 考试知识点——考试介绍第1章
- hdu 1109 Run Away
- vue3+heightchart实现3D饼图,echarts3D饼图,3D饼图引导线实现
- mysql.connector 小结
热门文章
- oracle π,plsql 计算π
- C语言之预处理探究(四):#、##和预定义宏
- java deque.pop_Java - dequeue的介紹及用法
- win10锁定计算机会断网吗,Win10专业版如何设置锁屏后不断网?超详细的图文教程...
- html 格式化 vim,代码格式化插件
- 用python进行因式分解_python中怎么对一个数进行因式分解?
- 文科本二计算机类大学排名,全国二本大学排名文科分数线
- 序列复杂度怎么看_每日算法系列【LeetCode 376】摆动序列
- 实现 消息提醒图标_Mac 上自带的「提醒事项」千万别错过
- java环境怎么搭,如何搭建一个完整的Java开发环境