c++智能指针

四种智能指针 c++里面有四个智能指针:auto_ptr, shared_ptr, unique_ptr, weak_ptr 其中第一个auto_ptr被c++11弃用。 各指针的特点: unique_ptr 独占对象的所有权,由于没有引用计数,因此性能较好 shared_ptr 共享对象的所有权,


c++实现单例模式

#include <iostream> #include <string.h> using std::cout; using std::endl; // 单例模式 class Singleton { public: // 3) 定义一个返回值为类指针的静态成员函数 // 只有第一


c++实现线程池

互斥锁#ifndef LOCKER_H#define LOCKER_H#include &lt;exception&gt;#include &lt;pthread.h&gt;#include &lt;semaphore.h&gt;// 线程同步机制封装类// 互斥锁类class locker {pu


docker教程

将当前用户添加到docker用户组为了避免每次使用docker命令都需要加上sudo权限,可以将当前用户加入安装中自动创建的docker用户组(可以参考官方文档):sudo usermod -aG docker $USER执行完此操作后,需要退出服务器,再重新登录回来,才可以省去sudo权限。镜像(


linux安装mysql8.0详细教程

查看是否安装mysqlrpm -qa | grep mysql检查是否自带mariadb数据库rpm -qa|grep mariadb有的话则删除rpm -e --nodeps mariadb-libslinux下切到/usr/local新建mysql文件mkdir mysql切到mysql目录下载


IO多路复用

1.select#include &lt;stdio.h&gt;#include &lt;arpa/inet.h&gt;#include &lt;stdlib.h&gt;#include &lt;unistd.h&gt;#include &lt;string.h&gt;int main() {


网络编程

1.字节序/* 字节序:字节在内存中存储的顺序。 小端字节序:数据的高位字节存储在内存的高位地址,低位字节存储在内存的低位地址 大端字节序:数据的低位字节存储在内存的高位地址,高位字节存储在内存的低位地址*/// 通过代码检测当前主机的字节序#include &lt;stdio


多线程开发

1.进程创建/* 一般情况下,main函数所在的线程我们称之为主线程(main线程),其余创建的线程 称之为子线程。 程序中默认只有一个进程,fork()函数调用,2进行 程序中默认只有一个线程,pthread_create()函数调用,2个线程。 #include &


进程间通信

进程间通信1. 无名管道/* #include &lt;unistd.h&gt; int pipe(int pipefd[2]); 功能:创建一个匿名管道,用来进程间通信。 参数:int pipefd[2] 这个数组是一个传出参数。 pi