wangzhengquan
2020-07-20 f85c9b875b060681b51f57b15074ba1c7c9f5636
README.md
@@ -1,8 +1,92 @@
 
## 实例
 请求应答 `./test2/server.c ./test2/client.c`
 ### 请求应答模式
 `source ./demo/server.c`
 **运行server端:**
 `./req_req server 8`
 **运行client端:**
 可以打开多个client
 `./req_rep client 8`
 在client端输入请求信息,server 端回应,client端输出回应信息
 ### 发布订阅模式
 **运行server端:**
 `./pub_sub server 8`
 **运行client端:**
 可以打开多个client
 `./pub_sub client 8`
 在server端输入发布信息,client端输出收到的订阅信息
## 接口说明
```
/**
 * 创建socket
 * @return socket地址
*/
void *mod_open_socket(int mod);
/**
 * 关闭socket
*/
int mod_close_socket(void * _socket);
/**
 * 绑定端口到socket, 如果不绑定则系统自动分配一个
 * @return 0 成功, 其他值 失败的错误码
*/
int mod_socket_bind(void * _socket, int port);
/**
 * 服务端开启连接监听
 * @return 0 成功, 其他值 失败的错误码
 */
int mod_listen(void * _socket);
/**
 * 客户端发起连接请求
 */
int mod_connect(void * _socket, int port);
/**
 * 发送信息
 * @return 0 成功, 其他值 失败的错误码
 */
int mod_send(void * _socket, const void *buf, const int size);
/**
 * 接收信息
 * @return 0 成功, 其他值 失败的错误码
*/
int mod_recv(void * _socket, void **buf, int *size) ;
/**
 * 释放接收信息的buf
 */
void mod_free(void *buf);
/**
 * 获取soket端口号
 */
int mod_get_socket_port(void * _socket);
```