Adair's Home

书写|为了更好地思考

    • 首页
    • 归档
    • 关于

socket连接池SocketPool分析(七):server连接池与client连接池

server连接池:我在 第一篇文章socket连接池SocketPool分析(一): 概述 当中说了,服务器端有成熟的one loop per thread模型来提供高并发,这点可以仔细阅读陈硕老师的书《Linux多线程服务端编程》,server端使用socket连接池是没有什

2015-12-08

socket连接池SocketPool分析(六):有意思的socket

首先从unp_client当中把connect的socket打印出来看看我的epoll的代码都放在了str_cli()函数当中,这里不需要提到那个函数。 1234567891011121314int main(int argc, char** argv) { // 使

2015-12-08

socket连接池SocketPool分析(五):Accept函数,进退维谷的困境

我最初实现的Accept函数是通过accept()函数获取socket描述符,再根据socket描述符构建出一个智能指针。 12345678910111213141516SocketObjPtr SocketObj::Accept() { if (sockFD_ ==

2015-12-08

socket连接池SocketPool分析(四):socket连接控制SocketObj

复习完了基础知识之后,现在就可以开始写一个socket连接控制的对象了。代码存在于我的github上:SocketPool socket_obj.h 12345678910111213141516171819202122232425262728293031323334353637

2015-12-08

socket连接池SocketPool分析(三):《UNPv1》复习(下):IO多路复用

有关epoll来实现一个回显程序的源代码请参见SocketPool当中的gtest/unp_server和unp_client UNIX下5种可用的IO模型的区别:阻塞式IO 非阻塞式IO IO复用(select和epoll):也叫IO多路复用,也叫事件驱动。IO复用和IO多路复

2015-12-08

socket连接池SocketPool分析(二):《UNPv1》复习(上):socket函数,三次握手,四次挥手

我在大学当中学完了C++写的第一个程序除了hello world就是《UNPv1》当中发送消息的这个程序了。本来以为复习这本书的时间会非常快,但是没想到在复习UNP这本书的过程中,发现了很多自己读大学的时候遗漏的知识点,很多以前并不明朗的概念也清晰起来。下面对此做个总结。因为任何

2015-12-08

socket连接池SocketPool分析(一):概述

从侯捷老师的池内春秋谈起记得侯捷老师的经典文章《池内春秋》讲的是内存池,由于当时内存价格昂贵,被称为是“CPU之外最宝贵的电脑硬件资源”,当我们直接使用new、malloc等API申请分配内存,缺点就是:由于所申请内存块的大小不定,当频繁使用时会造成大量的内存碎片并进而降低性能,

2015-12-08

shell脚本总结篇(三):附上我常用的shell脚本

最后附上一些我常用的脚本:软件安装完成之后设置为linux开机启动大多数linux发行版本提供了一个本地开机文件专门让系统管理员添加开机时候运行的脚本。脚本必须绝对路径。debian的本地开机文件是/etc/init.d/rc.local,redhat是/etc/rc.local

2015-12-03

shell脚本总结篇(二):shell脚本语法

shell的语法shell函数定义shell函数有两种形式 123function name { commands} 123name() { commands} 要使用函数只需要name,而不需要括号,就是说不用name()

2015-12-03

shell脚本总结篇(一):我在shell脚本当中常用的命令

这三篇文章是我零散的20篇印象笔记的总结。 首先罗列一下脚本当中常用的命令记录一下使用命令的惯用方法,每个示例都很短小,不能作为命令的入门教程。 echo用法:echo在脚本当中是与用户做交互的,我一般常使用的echo用法是用于打印出颜色: 123echo -ne "\

2015-12-03
<span></span>Prev1234Next<span></span>

Github 名片

分类

  • MessageQueue6
  • SocketPoll10
  • bash3
  • git3
  • gitlab1
  • hexo1
  • javascript1
  • property_tree3
  • 历程2
  • 日志1
  • 正则表达式1
  • 编程错误1
  • 编译1
  • 设计模式1

标签

  • socket10
  • SocketPoll10
  • git3
  • bash3
  • shell3
  • boost3
  • property_tree3
  • IPC3
  • protobuf3
  • epoll2
  • UNPv12
  • 四次挥手2
  • json2
  • xml2
  • 历程2
  • MessageQueue2
  • hexo1
  • g++1
  • 编译1
  • 连接1

标签云

C++ C1000k C10k IO多路复用 IPC MessageQueue SharedMemory SocketObj SocketPoll UNPv1 bash boost classFactory debug epoll g++ git gitlab hexo json libevent log logobj property_tree protobuf rapidjson rapidxml regex select shell singleton socket xml 三次握手 历程 反射 四次挥手 并发服务器 库 正则表达式 编译 连接

友情链接

  • 我的CSDN博客
  • 刘家财

豆瓣秀

RSS 订阅

新浪微博

Hello!
This is my blog.

Powered by hexo and Theme by Jacman © 2021 adairjun