[Linux]非阻塞模式下socket发送数据
来源:互联网 发布:什么是网络喷子 编辑:程序博客网 时间:2024/05/22 06:59
#include<stdlib.h>#include<stdio.h>#include<netinet/in.h>#include<netinet/tcp.h>#include<netdb.h>#include<sys/socket.h>#include<sys/types.h>#include<unistd.h>#include<fcntl.h>#include<errno.h>#include<string.h>#define BUF_SIZE 1024*128int main(const int argc,char* const argv[]){int socket_fd;struct sockaddr_in name;struct hostent *hostinfo;socket_fd = socket(PF_INET,SOCK_STREAM,IPPROTO_TCP);name.sin_family = AF_INET;hostinfo = gethostbyname(argv[1]);if(hostinfo == NULL) return -1;name.sin_addr = *((struct in_addr*)hostinfo->h_addr);name.sin_port = htons(atoi(argv[2]));if(connect(socket_fd,(struct sockaddr*)&name,sizeof(name))==-1) return -2;printf("connect server succss\n");char buf[BUF_SIZE];ssize_t count;for(int i=0;i<BUF_SIZE;++i)buf[i]=(char)(i%256);count=write(socket_fd,buf,BUF_SIZE);printf("in block mode, count = %d\n",count);int sock_flag;int times=0;sock_flag = fcntl(socket_fd,F_GETFL);fcntl(socket_fd,F_SETFL,sock_flag|O_NONBLOCK);count=write(socket_fd,buf,BUF_SIZE);printf("in nonblock mode, count = %d\n",count);close(socket_fd);return 0;}
0 0
- [Linux]非阻塞模式下socket发送数据
- linux socket非阻塞模式下笔记
- Linux下socket阻塞模式与非阻塞模式
- Linux下非阻塞Socket发送错误返回
- Linux下socket阻塞、非阻塞详解
- linux socket 非阻塞模式进行连接
- linux非阻塞的socket发送数据出现EAGAIN错误的处理方法
- socket阻塞非阻塞模式
- socket 非阻塞模式
- linux-socket connect阻塞和非阻塞模式 示例
- linux下socket connect非阻塞与阻塞
- Linux socket非阻塞
- linux下socket编程 select实现非阻塞模式多台客户端与服务器通信
- Socket 阻塞模式和非阻塞模式
- socket阻塞模式和非阻塞模式
- Socket 阻塞模式和非阻塞模式
- Socket非阻塞模式开发
- socket 非阻塞模式下的connect封装实现
- 跟我一起学写jQuery插件开发方法(附完整实例及下载)
- Fragments for background processing
- java基础
- Atitit.软件按钮与仪表盘(13)--全文索引操作--db数据库子系统mssql2008
- LIBRARY_PATH和LD_LIBRARY_PATH环境变量的区别
- [Linux]非阻塞模式下socket发送数据
- jQuery+PHP+ajax实现微博加载更多内容列表功能
- Atitit.软件开发概念说明--io系统区--特殊文件名称保存最佳实践文件名称编码...filenameEncode
- wpa_cli log level
- jQuery插件开发 - 其实很简单
- 10.29学习笔记
- day65,page80
- 关于jsp学习第一天
- swoole入门教程03-Timer定时器、心跳检测及Task进阶实例:mysql连接池