跨平台实现客户端流控

来源:互联网 发布:office2016激活 知乎 编辑:程序博客网 时间:2024/06/05 22:45

     流控的目的在于控制用户数据(很多模块,有JAVA, 有C++)到VPN真实流量。

     其实这个很好实现,让所有模块都去申请流量即可控制。

     但是问题的关键在于如何实现JAVA和C++的程序一起去流控?

     还好JAVA提供了共享内存,但是是否和mmap的调用一致呢?需要写个程序验证一下

C++:

 

目的在于打开共享内存,读取前4个字节的int,当然JAVA打开了就是来修改的。

java的如下:

 

 

然后先启动C++的程序,看到读取到的指没有变化,当启动JAVA的程序以后,

读取到的值随JAVA变化,说明完全可以一起操作共享内存,没有什么手脚

 

 

 

问题到这里还没有完,多个模块申请流控是需要同步手段的。

java和c++的跨语言如何实现同步呢?

文件锁是一种方式,而且java也支持,但是也需要验证一下。