# NNGFragment **Repository Path**: chrisluoz/nngfragment ## Basic Information - **Project Name**: NNGFragment - **Description**: NNG-nanomsg的封装,多线程多任务,自定义回调函数,json数据处理 - **Primary Language**: C++ - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-07-25 - **Last Updated**: 2022-07-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # NNGFragment #### 介绍 NNG的封装 #### 简要说明 1. 使用nanomsg 2. 加入jsoncpp进行json数据处理,地址https://github.com/open-source-parsers/jsoncpp 3. 支持通过读取配置文件创建管道接受器 4. 支持自定义管道接收回调函数 #### 代码描述 1. NNGController - IPCBean IPC属性对象,配合管理多个IPC线程(IPC为管道,以下均称为管道) - NNGIPCEngine 单例NNG控制对象 - void LoadUrlsFromConfig(string filepath); 加载配置文件,获取 管道名 管道URL 组合,配置文件名-filepath(可以绝对路径),配置文件以文本形式存储,文件内容为多行文本:每一行内容:管道名 + 空格 + 管道Url;读取内容中,如果不是管道Url格式则自动忽略 - void SetIPCFun(string ipcname, IPCFun inIPCFun) 设置特定管道的接收回调函数:ipcname-管道名,inIPCFun(string,string)回调函数(若不设置,则执行默认的回调函数 DefaultIPCFun ) - void Start() 开启所有管道,每一条管道开启一个线程接收字符串,接收到字符串执行回调函数 - void Stop() 关闭所有管道,关闭所有接收线程 - void SendIPCMsg(string taskname, string taskjson); 向特定管道发送字符串:taskname-管道名 - OrderBean 暂未用到 - JsonEngine 暂未用到