当前位置: 首页 > news >正文

免费开源商城系统源码网站排名优化外包

免费开源商城系统源码,网站排名优化外包,免费源码资源,做网站 写脚本是什么1.本地套接字 本地套接字的作用:本地的进程间通信 有关系的进程间的通信 没有关系的进程间的通信 本地套接字实现流程和网络套接字类似,一般采用TCP的通信流程 2.本地套接字通信的流程 - tcp // 服务器端 1.创建监听的套接字int lfd socket(AF_U…

1.本地套接字

本地套接字的作用:本地的进程间通信

  •     有关系的进程间的通信
  •     没有关系的进程间的通信

本地套接字实现流程和网络套接字类似,一般采用TCP的通信流程

2.本地套接字通信的流程 - tcp

// 服务器端
1.创建监听的套接字int lfd = socket(AF_UNIX/AF_LOCAL, SOCK_STREAM, 0);
2.监听的套接字绑定本地的套接字文件 -> server端struct sockaddr_un addr;// 绑定成功之后,指定的sun_path中的套接字文件会自动生成bind(lfd,addr,len);
3.监听listen(lfd, 10);
4.等待并接收客户端连接请求struct sockaddr_un caddr;int cfd = accept(lfd, &caddr, &len);
5.通信接收数据:read/recv发送数据:write/send
6.关闭close();
// 客户端的流程
1.创建通信的套接字int cfd = socket(AF_UNIX/AF_LOCAL, SOCK_STREAM, 0);
2.监听的套接字绑定本地的IP端口struct sockaddr_un addr;// 绑定成功之后,指定的sun_path中的套接字文件会自动生成bind(cfd,addr,len);  
3.连接服务器struct sockaddr_un saddr;connect(cfd, &saddr, sizeof(saddr));
4.通信接收数据:read/recv发送数据:write/send
5.关闭连接close();
// 头文件: sys/un.h
#define UNIX_PATH_MAX	108
struct sockaddr_un {sa_family_t	sun_family;		/* 地址族协议 af_local */char		sun_path[UNIX_PATH_MAX];	/* 套接字文件的路径,这是一个伪文件,大小永远=0 */
};

ipc_server.c

#include <stdio.h>
#include <string.h>
#include <unistd.h>
#include <stdlib.h>
#include <arpa/inet.h>
#include <sys/un.h>int main() {unlink("server.sock");// 1.创建监听的套接字int lfd = socket(AF_LOCAL, SOCK_STREAM, 0);if(lfd == -1) {perror("socket");exit(-1);}// 2.绑定本地套接字文件struct sockaddr_un addr;addr.sun_family = AF_LOCAL;strcpy(addr.sun_path, "server.sock");int ret = bind(lfd, (struct sockaddr *)&addr, sizeof(addr));if(ret == -1) {perror("bind");exit(-1);}// 3.监听ret = listen(lfd, 100);if(ret == -1) {perror("listen");exit(-1);}// 4.等待客户端连接struct sockaddr_un cliaddr;int len = sizeof(cliaddr);int cfd = accept(lfd, (struct sockaddr *)&cliaddr, &len);if(cfd == -1) {perror("accept");exit(-1);}printf("client socket filename: %s\n", cliaddr.sun_path);// 5.通信while(1) {char buf[128];int len = recv(cfd, buf, sizeof(buf), 0);if(len == -1) {perror("recv");exit(-1);} else if(len == 0) {printf("client closed....\n");break;} else if(len > 0) {printf("client say : %s\n", buf);send(cfd, buf, len, 0);}}close(cfd);close(lfd);return 0;
}

ipc_client.c

#include <stdio.h>
#include <string.h>
#include <unistd.h>
#include <stdlib.h>
#include <arpa/inet.h>
#include <sys/un.h>int main() {unlink("client.sock");// 1.创建套接字int cfd = socket(AF_LOCAL, SOCK_STREAM, 0);if(cfd == -1) {perror("socket");exit(-1);}// 2.绑定本地套接字文件struct sockaddr_un addr;addr.sun_family = AF_LOCAL;strcpy(addr.sun_path, "client.sock");int ret = bind(cfd, (struct sockaddr *)&addr, sizeof(addr));if(ret == -1) {perror("bind");exit(-1);}// 3.连接服务器struct sockaddr_un seraddr;seraddr.sun_family = AF_LOCAL;strcpy(seraddr.sun_path, "server.sock");ret = connect(cfd, (struct sockaddr *)&seraddr, sizeof(seraddr));if(ret == -1) {perror("connect");exit(-1);}// 4.通信int num = 0;while(1) {// 发送数据char buf[128];sprintf(buf, "hello, i am client %d\n", num++);send(cfd, buf, strlen(buf) + 1, 0);printf("client say : %s\n", buf);// 接收数据int len = recv(cfd, buf, sizeof(buf), 0);if(len == -1) {perror("recv");exit(-1);} else if(len == 0) {printf("server closed....\n");break;} else if(len > 0) {printf("server say : %s\n", buf);}sleep(1);}close(cfd);return 0;
}

http://www.mmbaike.com/news/48936.html

相关文章:

  • 正确设置网站keywords网站优化系统
  • 济南网站自然优化如何推广普通话
  • 小白学做搭建网站营销助手
  • seowhy友链郑州seo顾问热狗
  • 江西做网站公司湖南网站设计外包服务
  • 途牛网站大数据建设网络推广外包加手机蛙软件
  • 佛山做网站企业宁波靠谱营销型网站建设
  • 备案 网站名称什么用网站你应该明白我的意思吗
  • 网络代码seo百度站长工具
  • 网站优化推广平台百度seo网站优化 网络服务
  • 网站开发系统线上卖护肤品营销方法
  • 网站 app建设开发合作协议优化大师tv版
  • 地方门户网站管理系统某产品网络营销推广方案
  • 学做外挂上什么网站南宁seo主管
  • 口碑好的徐州网站建设市场调研方案范文
  • 中企动力邮箱登陆入口湖州网站seo
  • 注册网站是什么意思网站域名在哪里查询
  • 网站怎么绑定域名汉川seo推广
  • dw做网站小技巧网页设计与制作作业成品
  • 网站建设费用要求南京seo关键词优化预订
  • 建设企业网站公积金怎么建立一个公司的网站
  • 淘宝卖东西如何在网站做宣传上海公布最新情况
  • 松岗做网站哪家便宜湖北荆门今日头条
  • 云南做网站找谁四川seo技术培训
  • 网站如何做单项链接舆情监测
  • 网站建设师薪资线下推广方案
  • 政府网站新媒体建设竞价推广员月挣多少
  • 做php门户网站那个系统好幽默软文经典案例300
  • 武汉市疫情最新消息泰州网站优化公司
  • 宜州网站建设服务青岛网站排名提升