自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Linux C/C++后台开发

Talk is cheap. Show me the code!

  • 博客(3)
  • 收藏
  • 关注

原创 udp接收缓冲设置多大

先说一下保护消息边界,就是指传输协议把数据当作一条独立的消息在网上传输,接收端只能接收独立的消息。这个机制决定了udp的特性: 1. udp可以多线程对同一个fd进行发包操作,如果是tcp多线程发送,会让流乱序,接收端完全无法解析出来 2. udp接收端每次只能拿到一个包,tcp需要借助自定义包头来拆分出一个一个的包假如现在发送端发送了长度为100,200,300的3个包,接收端需要调用3...

2018-09-09 23:08:49 9566 1

原创 避免不必要的内存拷贝和清0

对于网络编程中,一般都喜欢使用memset清0和memcpy拷贝操作,举个例子:char buffer[1024];memset(buffer, 0, 1024);memcpy(buffer, proxy_hdr, IPC_HEADER_SZ);memcpy(buffer, trans_hdr, TRANMIT_HEADER_SZ);memcpy(buffer, buf, len);...

2018-09-09 21:50:57 1691

原创 把函数返回值转为异常处理机制

我们这里要使用的是#include <stdexcept>,可以参考官方文档 先举一个例子,比如调用recv的函数返回值处理:int ret = recv(fd...);if (ret > 0){}if (ret == 0){}if (ret == -1){ //EAGAIN/EWOULDBLOCK提示你的应用程序现在没有数据可读请稍后再试 if (...

2018-09-04 13:00:17 835

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除