多线程
文章平均质量分 95
梦花火
服务端爱好者,个人博客地址http://justsolitude.com/
展开
-
浅析线程安全的对象生命期的管理
1.前言:c++与其他面向对象语言不同,没有gc,c++要求程序员自己管理对象的生命,在并发编程环境下显得尤为困难。当一个对象能被多个线程同时看到时,那么对象的销毁时机就会变得模糊不清,可能出现多种竞争条件(race condition): 在即将析构一个对象时,从何知道别的线程是否正在执行该对象的成员。 如何保证在执行成员的函数期间,对象不会被另一个线程析构。 在调...原创 2018-07-26 14:22:24 · 235 阅读 · 0 评论 -
漫谈io复用和高性能服务框架
前言:这篇博客可能会写的有点杂乱,毕竟是想到哪里写到哪里,至少算是一个总结性的文章。 一.IO复用的生 二.IO复用实现 三.统一事件源 四.Reactor模型 五.有限状态机一.IO复用的生 首先我们先说说不用IO复用时,我们所谓的并发服务器的极限。简单的想,我们可以用一个线程来负责一个链接,但是线程个数又不是可以无限增大的...原创 2018-07-26 14:23:38 · 208 阅读 · 0 评论 -
ftp关键技术五:限制链接数
通常在一些网站中,为了防止恶意大量的访问和超大量访问导致内存占满,会对单个链接的连接数和总链接数做出一个限制。 以本FTP服务端为例,假设每个客户链接,我们都需要两个进程来处理它,假设了一个客户需要分配总共1M的栈内存出来,1000个链接,接近1G的内存就没有了。另一方面,如果单个ip大量链接服务端,会占用大量的带宽、内存和文件句柄,实际上每个用户(ip)只需要两三个链接就可以解决问题,所...原创 2018-07-26 14:30:33 · 3820 阅读 · 0 评论