unixsock_client.c

来自「用于进程间通信的unix域socket使用示例」· C语言 代码 · 共 47 行

C
47
字号
#include<stdio.h>
#include <sys/socket.h>
#include <sys/un.h>
#include <unistd.h>

#define NAME	"unix.socket"
#define BUFF_SIZE 256

int main()
{
	int fd;
	int len;
	int rval;
	

	struct sockaddr_un un;
	if((fd=socket(AF_UNIX,SOCK_STREAM,0)) < 0)
	{	
		printf("socket error!\n");
		return -1;
	}
	memset(&un,0,sizeof(un));
	un.sun_family = AF_UNIX;
	strcpy(un.sun_path,NAME);
	len = sizeof(un.sun_family)+strlen(NAME);
	if(connect(fd,(struct sockaddr*)&un,len)<0)
	{
		printf("connect error!\n");
		close(fd);
		return -1;
	}
	unsigned int i = 1;
	char buf[BUFF_SIZE] = {0};
	FILE* fp = fopen("./data.txt","r");
	fread(buf,sizeof(char),254,fp);
	
	while(i<100000)
	{
		write(fd,buf,BUFF_SIZE);
		i++;
	}
	
	printf("i = %ld\n",i);
	fclose(fp);
	close(fd);
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?