dup 和 dup2既然有重定向的功能,那么我们之前写的tcp socket通信是不是可以修改一下呢?比如,不用write往socket里面写,而直接用dup2/dup重定向呢?
答案是肯定的。
代码如下
tcp_dup2_server
#include
#include
#include
#include
#include
#include
#include
#include
#include
int startup(const char* _ip, int _port)
{
int sock = socket(AF_INET, SOCK_STREAM, 0);
if(sock < 0)
{
perror("socket");
exit(2);
}
// bind绑定
struct sockaddr_in local;
local.sin_family = AF_INET;
local.sin_port = htons(_port);
local.sin_addr.s_addr = inet_addr(_ip);
if(bind(sock, (struct sockaddr*)&local, sizeof(local)) < 0)
{

本文探讨如何利用dup2函数改进TCP socket通信方式,通过重定向避免直接使用write写入socket。示例代码展示了tcp_dup2_server的实现。
最低0.47元/天 解锁文章
1879

被折叠的 条评论
为什么被折叠?



