上一页 1 ··· 9 10 11 12 13 14 15 16 17 ··· 21 下一页

2019年1月21日

多线程中共享变量是加锁还是原子操作还是不加锁问题的学习

摘要: 使用原子操作 优先于 加锁 加锁效率下降明显对于多线程访问 共享变量的时候! 附录上云服务器上的learing/1-20的代码。。。。。。。。 阅读全文

posted @ 2019-01-21 00:27 zhangkele 阅读(679) 评论(0) 推荐(0)

2019年1月17日

常见开源服务器模型学习 未完待续

摘要: https://blog.csdn.net/answer3y/article/details/48276687 本文要描述的主要有如下6种模型:1)epoll 1线程(listen+accept+epoll_wait+处理) 模型 .................................. 阅读全文

posted @ 2019-01-17 19:50 zhangkele 阅读(355) 评论(0) 推荐(0)

protobuf在c++的使用方法以及在linux安装

摘要: 把proto文件转化成c++代码.执行下面命令. 阅读全文

posted @ 2019-01-17 02:14 zhangkele 阅读(1894) 评论(0) 推荐(0)

2019年1月2日

pthread_cond_wait函数的学习以及其他

摘要: pthread_cond_wait() 前使用 while 讲解2009-10-27 9:33LINUX环境下多线程编程肯定会遇到需要条件变量的情况,此时必然要使用pthread_cond_wait()函数。但这个函数的执行过程比较难于理解。 pthread_cond_wait()的工作流程如下(以 阅读全文

posted @ 2019-01-02 22:55 zhangkele 阅读(466) 评论(0) 推荐(0)

2018年12月18日

Linux 最新SO_REUSEPORT特性

摘要: RST与epoll的EPOLLHUP事件 当socket的一端认为对方发来了一个不存在的4元组请求的时候,会回复一个RST响应,在epoll上会响应为EPOLLHUP事件,目前我已知的两种情况会发响应RST [1] 当客户端向一个没有在listen的服务器端口发送的connect的时候 服务器会返回 阅读全文

posted @ 2018-12-18 01:58 zhangkele 阅读(314) 评论(0) 推荐(0)

五种I/O模型的学习

摘要: 来自 http://www.52im.net/thread-1935-1-1.html 4、互联网服务端处理网络请求的原理 首先看看一个典型互联网服务端处理网络请求的典型过程:<ignore_js_op>由上图可以看到,主要处理步骤包括: 1)获取请求数据,客户端与服务器建立连接发出请求,服务器接受 阅读全文

posted @ 2018-12-18 00:18 zhangkele 阅读(238) 评论(0) 推荐(0)

2018年12月8日

va_list arg_list va_start(arg_list, format) va_end( arg_list ) 原理的理解

摘要: 1.在C中,当我们无法列出传递函数的所有实参的类型和数目时,可以用省略号指定参数表 void foo(...);void foo(parm_list,...); 这种方式和我们以前认识的不大一样,但我们要记住这是C中一种传参的形式,在后面我们就会用到它。 2.函数参数的传递原理 函数参数是以数据结构 阅读全文

posted @ 2018-12-08 00:11 zhangkele 阅读(1334) 评论(0) 推荐(0)

2018年12月7日

TCP Nagle算法以及延迟确认(即延迟回复ACK)的学习

摘要: TCP/IP协议中,无论发送多少数据,总是要在数据前面加上协议头,同时,对方接收到数据,也需要发送ACK表示确认。为了尽可能的利用网络带宽,TCP总是希望尽可能的发送足够大的数据。 (一个连TCP接会设置MSS参数,因此,TCP/IP希望每次都能够以MSS尺寸的数据块来发送数据)。 Nagle算法就 阅读全文

posted @ 2018-12-07 01:27 zhangkele 阅读(1679) 评论(0) 推荐(0)

2018年12月5日

tcp/ip 性能优化问题的思考学习

摘要: 首先要看TCP/IP协议,涉及到四层:链路层,网络层,传输层,应用层。 其中以太网(Ethernet)的数据帧在链路层 IP包在网络层 TCP或UDP包在传输层 TCP或UDP中的数据(Data)在应用层 它们的关系是 数据帧{IP包{TCP或UDP包{Data}}} 在应用程序中我们用到的Data 阅读全文

posted @ 2018-12-05 11:14 zhangkele 阅读(723) 评论(0) 推荐(0)

2018年11月30日

g++ -I(大写i) 与-L(大写l)-l(小写l) 的作用与学习 使用静态库 编译的时候 需要加上 static

摘要: linux 下 g++编译程序时,-I(大写i) 与-L(大写l)-l(小写l) 的作用 作为一个linux入门级使用者,gcc/g++ 的简单操作已经用过多次, 但是有时稍微复杂一点的程序就会使用到库。在遇到问题的时候我查了挺多前辈总结的资料,也留个脚本希望对朋友们有个帮助。如果也能处理你的问题, 阅读全文

posted @ 2018-11-30 11:32 zhangkele 阅读(6539) 评论(0) 推荐(1)

上一页 1 ··· 9 10 11 12 13 14 15 16 17 ··· 21 下一页

导航