摘要:一 .编译动态库: 使用动态库的四种方法: 1. export LD_LIBRARY_PATH=/usr/lib64/( so所在路径) 只对当前用户的终端生效, 其他用户没用。 2.在该 sudo vim /etc/ld.so.conf文件下; 将动态库的路径加进来;然后 sudo ldconfi
阅读全文
摘要:1.类与类之间的关系:依赖,实现,泛化(继承),关联,组合,聚合。 1)依赖(虚线):一个类是 另一个类的函数参数 或者 函数返回值。 2)实现(实线加小圆):对纯虚函数类(抽象类)的实现。 3)继承 即 泛化(实线加空心三角形,从子类指向父类):表示一个类与另一个类之间的继承关系; 4)关联(实线
阅读全文
摘要:下面代码实现的思想:epoll反应堆模型:( libevent 网络编程开源库 核心思想) 1. 普通多路IO转接服务器: 红黑树 ―― 添加待监听的结点 ―― epoll_ctl ―― EPOLLIN ―― fd ―― 监听 ―― epoll_wait ―― 返回满足监听事件的fd的总个数 ――
阅读全文
摘要:第一部分为头文件 第二部分为自实现线程池代码(对libevent库进行一些精简,凸显逻辑) 线程池的相关信息: typedef struct { void *(*function)(void *); /* 函数指针,回调函数 */ void *arg; /* 上面函数的参数 */} threadpo
阅读全文
摘要:1.这段代码注意的地方: alarm() 函数不是阻塞函数,定时之后,程序会继续往下运行; pause() 阻塞函数,函数被调用调用后,主动造成程序挂起。 2.这个地方很容易想歪;当时的问题是这样: 加入该程序在 执行完38 后失去CPU资源,那么当它再次获得CPU资源时且信号已经发出,程序会不会唤
阅读全文
摘要:1.单进程服务器: 2.单客户端 3.多进程服务器 4.多个客户端(一段代码产生多个客户端) 1.当时编写这段代码的作用是撑爆老师的服务器
阅读全文
摘要:1 Linux第一天==================================================================================== 2 一.基础命令 3 1.history 查看历史命令,此终端自安装至现在的所有。 4 2.命令解析器: 5 1)shell. 针对Unix操作系统 6 2...
阅读全文