【支持库】封装一个基于.net的nanomsg 支持库

小肥羊 2月前 466

目前官方版本的nnmsg,在多轮测试中,只有调查模式存在问题。

从官方论坛也能看到具体老大自己的描述。https://bbs.aardio.com/forum.php?mod=viewthread&tid=21998&highlight=nnmsg

所以如果在不需要使用调查模式:surveyor/respondent套接字,在这个情况下,是可以直接使用官方库的。

Nanomsg用起来有几大优势,除了支持 tcp /ws协议外,还支持inproc 和ipc协议。

使用:inproc://test   则可以在进程内,进行通信

使用:ipc://  协议,则可以在本机的进程间通信。

且nnmsg没有状态要求,对与客户端或者服务端谁先上线没有要求。


再说说极简的nnmsg存在的一些不习惯之处,nnmsg更关注于消息本身,这样就导致客户端和服务端没有状态维护,不知道对方是否已经连接。

所以如果要实现这些功能,就需要自己进行功能上的封装,如心跳机制,需要二次加工。

因为个人需要,需要使用到调查模式,所以利用.net的nanomsg版本封装了一个库。

其实查看net的版本,也发现实际上还是调用的原生的nanomsg版本dll,这个版本比较旧,目前能用,至于其他bug不确定,毕竟太旧了。

所以,.net版本封装的nnmsg,实际上是在曲线救国,用.net来调用dll,我们再通过aar调用.net的dll文件,就是在套娃,解决方案并不优秀。

不过起码实现了功能:


附件是范例和封装好的库文件,

放在目录:~\lib\yang\ 下即可运行范例查看



上传的附件:
最新回复 (5)
  • 光庆 2月前
    0 2

    这个估计得一鹤大佬解决了,从语法上看没啥毛病,就是执行到接收数据代码的时候会闪退。

  • 小肥羊 2月前
    0 3
    光庆 这个估计得一鹤大佬解决了,从语法上看没啥毛病,就是执行到接收数据代码的时候会闪退。
    我也觉得,又不准备打扰他,于是我把.net的nanomsg自己封装了个,可以用了。
  • 光庆 2月前
    0 4
    小肥羊 我也觉得,又不准备打扰他,于是我把.net的nanomsg自己封装了个,可以用了。
    这么豪横,牛
  • 小肥羊 2月前
    0 5
    重新封装了.net的库,实现了功能,在附件上
  • 光庆 2月前
    0 6

    很好,很强大。顶你

返回