随笔分类 - Linux
摘要:1.通过模板递归和特化实现参数包展开 #include <iostream> #include <type_traits> #include <memory> using namespace std; // 【1】 template<typename... Types> struct Sum; //
阅读全文
摘要:因为最近在学习cpp相关的支持,讲义中需要使用curl库,查看环境中存在curl命令,但是没有curl的静态库,和相关的头文件,因此无法使用。(可能是能力还不到家,没发现问题) 因此就想着使用源码安装curl,将其安装在/usr/local/libcurl目录下,经过一次列的wget,./confi
阅读全文
摘要:0.UDP客户端 1 /** 2 udpclient.c 3 */ 4 #include <stdio.h> 5 #include <unistd.h> 6 #include <sys/socket.h> 7 #include <sys/types.h> 8 #include <arpa/inet.
阅读全文
摘要:1.几个开源网络库 1.libevent(类比epoll) 1.http://libevent.org/ 2.wget -c [addr] --no-check-certificate 3../configure --prefix=/usr/local/libevent 4.make && make
阅读全文
摘要:1.Epoll事件的触发模式 1.Level Trigger没有处理反复发送(效率低,开发简单,select/epoll默认触发模式) 2.Edge Trigger只发送一次(效率高,开发困难) 2.Epoll重要的API 1.int epoll_create(); 2.int epoll_ctl(
阅读全文
摘要:本节所使用的方式是将非阻塞式I/O与I/O多路复用结合,采用类似事件出发的机制对I/O操作进行处理;与多进程和多线程技术相比,异步I/O技术的最大优势是系统开销小,系统不必创建进程/线程,也不必维护这些进程/线程,从而减少了系统的开销。 1 /** 2 client.c 3 */ 4 #includ
阅读全文
摘要:要求: 1.客户端与服务端可以通过TCP通信; 2.处理常见的信号(SIGINT, SIGQUIT, SIGHUP, SIGPIPE, SIGCHLD); 3.服务器在后台运行; 4.使用C++实现; 1 /** 2 defs.h 3 */ 4 #ifndef _DEFS_H_ 5 #define
阅读全文
摘要:1. socket基础编程 1.1 TCP Server网络编程基本步骤 1.创建socket,指定使用TCP协议 2.将socket与地址和端口绑定 3.监听端口 4.创建连接socket 5.使用recv接收数据 6.使用send发送数据 7.使用close关闭连接 1.2 TCP常见套接字选项
阅读全文
摘要:1.基础函数及其头文件 #include <unistd.h> void usleep(usecond) 2.信号 SIGHUP 控制终端的挂起信号 SIGINT 键盘输入退出信号(Ctrl + C) SIGQUIT 键盘输入退出信号(Ctrl + \) SIGKILL* SIGSTOP* SIGP
阅读全文
浙公网安备 33010602011771号