相同指针与全局变量编译之坑

相同指针陷阱这是一个将yp指针的值加到xp指针两次的函数。voidfun1(int*xp,int*yp){*xp+=*yp;*xp+=*yp;}这个代码表面一看可以优化成这样voidfun1(int*xp,int*yp){*xp+=2**yp;}但是如果yp于xp指针指向的是同一个地址,那么情况就会
c/c++ 2020年11月27日 19次浏览

服务器----分布式锁原理

锁线程锁lock(mutex)资源操作unlock(mutex)进程锁(nginx中accept锁-共享内存+信号量)分布式锁在不同机器的进程的锁分布式锁的实现方案数据库redis,mysqlzookeeper分布式锁有哪些特征互斥性。可重入性,一个进程允许递归获取锁(需要递归释放锁)。锁超时(进程
工具 c/c++ 网络编程 计算机网络 2020年11月22日 22次浏览

zookeeper从入门到入土

zookeeper四个重要路径/master群首建立,用来识别群首用的,一个集群只能有一个。/workers节点作为父节点,其下每个znode子节点保存了系统中一个可用从节点信息。/tasks节点作为父节点,其下每个znode子节点保存了所有已经创建并等待从节点执行的任务的信息,主-从模式的应用的客
工具 2020年11月21日 25次浏览

多线程的虚假唤醒理解

虚假唤醒在多线程环境中,在竞争资源的时候,有时候拿到了锁,却发现资源没了,这可能就是使用了条件等待产生的一个惊群效应。pthread_cond_signal将所有的pthread_cond_wait线程都唤醒了,但是只有个别线程竞争到了资源,没有竞争资源的线程就是属于虚假唤醒的线程。对于虚假唤醒的线
c/c++ 程序设计 2020年11月17日 47次浏览

NAT网络地址转换协议

NAT简介在私网与外网通信的过程中,私网与公网连接的边沿节点被称为路由器。比如私网内部网络为192.168.1.0的网络。路由器的公网IP为112.93.114.32,服务器的公网IP地址为120.93.24.180。服务器发送数据与路由器公网IP时,能够将数据映射到私网中的机器;私网内的机器发送数
计算机网络 2020年11月15日 37次浏览

字符串匹配sunday算法封装

字符串匹配在工作中,需要用字符串匹配,为了可以快速切换不同的库,编写了这个匹配接口,方便实现不同字符串匹配库的切换.接口封装sunday.h#include<stdio.h>#include<string.h>#include<stdlib.h>#defineKE
工具 c/c++ 2020年11月04日 42次浏览

hyperscan字符串匹配库接口封装

字符串匹配在工作中,需要用字符串匹配,为了可以快速切换不同的库,编写了这个匹配接口,方便实现不同字符串匹配库的切换.接口封装头文件kwmatch.h#ifndef__KWMATCH_H__#define__KWMATCH_H__//controllogprintswitch#defineKW_DEB
工具 c/c++ 2020年11月04日 35次浏览

将rgba图片信息转换为bmp图片文件

将rgba图片信息转换为bmp图片文件#include<stdio.h>#include<windows.h>#pragmapack(1)//BMP文件头(14字节)typedefstruct/****BMPfileheaderstructure****/{unsignedi
工具 c/c++ 2020年11月01日 46次浏览

linux系统如何吐core

生成core文件临时生效(重启后不生效)ulimit-c0不产生core文件ulimit-c100设置core文件最大为100kulimit-cunlimited不限制core文件大小永久生效方法vi/etc/profile#在profile中添加:ulimit-c1073741824#或者ulim
工具 linux 2020年10月16日 70次浏览

将wsl文件系统映射到win的磁盘上

wsl所在路径C:\Users\mouse\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu18.04onWindows_79rhkp1fndgsc\LocalState\rootfs命令substY:C:\Users\mouse\AppData
工具 2020年10月07日 110次浏览