最新文章

Macos进入Recovery界面关闭SIP

Macos进入Recovery界面关闭SIP

bingliaolong MacOs 2年前 178 0

Intel芯 重启有了声音后按住command + R 直到苹果界面显示了出来后释放 M芯片 长按关机键 根据提示继续按住 修改SIP 根据上面的方法进入了Recovery界面后 点击上方的实用工具 打开一个终端,先查询SIP状态 关闭SIP 重启电脑 开启SIP 根据上面的方法...

C++并发编程 _ 无锁数据结构

C++并发编程 _ 无锁数据结构

bingliaolong C++ 2年前 9 0

自旋锁 用ATOMIC_FLAG_INIT进行了flag的初始化 它确保了flag的初始状态是清除(或说“未设置”)状态 lock调用了test_and_set方法来试图获取锁 test_and_set会检查flag的当前值:如果flag是清除状态,则设置它并返回false;如果...

包管理器:设计与实现

包管理器:设计与实现

bingliaolong C++ 2年前 14 0

背景 管理器用于管理多个任务 接入了管理器的模块,会根据自己要做的事情,来生成不同的任务 而这些任务的生成,是由接入了管理器的模块,通过一些重要的数据(比如目标数据包的编号,以及目标所在的位置,要求管理器执行的任务类型),来让管理器生成的不同的任务,并添加到任务队列中 目前的设计...

Zlib记述:一

Zlib记述:一

bingliaolong C C++ 2年前 20 0

概述 zlib库是一个广泛使用的压缩/解压缩库 下面实现是用了zlib 1.3版本的代码和相关库 具体是使用了zlib源码中带的minizip 其中的minizip扩展提供了处理ZIP文件的功能 解压 在解压之前可能需要处理其他的很多工作,比如验证目录,验证目标文件是否存在等。这...

Spdlog记述:四

Spdlog记述:四

bingliaolong C++ 2年前 9 0

线程池 创建线程池方法一 调用async_factory_impl::create创建线程池 但是这个函数实际作用是用于创建一个记录器 由于需要一个线程池对象参数,所以在创建记录器之前做了个检查,如果还不存在线程池,就先创建线程池,再构造记录器 这里使用递归锁的原因可能是为了使代...

51CTO:C++网络通信引擎架构与实现一

51CTO:C++网络通信引擎架构与实现一

bingliaolong C++ Socket 2年前 10 0

WIN32_LEAN_AND_MEAN 一个预处理宏,用于控制 Windows 头文件中包含哪些内容 具体来说,定义这个宏会减少 Windows 头文件中包含的一些不常用的头文件和 API,从而减小编译时间并减少编译产生的二进制文件的大小 比如在包含 windows.h 之前定义...

Macos编译x86_64相关二

Macos编译x86_64相关二

bingliaolong MacOs 2年前 21 0

安装Rosetta 2 打开一个Rosetta终端 编译相关 zlib 开始编译 编译openssl 拉代码 rosetta 需要M2下编译x86_64 配置 编译安装 安装上面所指定的路径,将会安装在当前路径下的out文件夹里面 macOS编译libcurl 创建配置 如果提示...

Macos屏保相关

Macos屏保相关

bingliaolong MacOs 2年前 8 0

登录用户 获取登录用户名 uuid 需要获取硬件UUID,用这个UUID拼出目标文件名。具体: 获取 通过IOKit库查询“IOPlatformExpertDevice”服务,并从中读取“IOPlatformUUID”属性,获取的就是硬件的UUID 这个UUID是针对Mac计算机...

51CTO:Linux C++网络编程五

51CTO:Linux C++网络编程五

平台相关 select 支持:windows 支持:linux,macos,bsd,aix等 poll 支持:linux,macos,bsd等 不支持:一些交旧的或特定的unix操作系统可能不支持poll 不支持:windows不提供标准的poll,但可以通过其他相似的api来达...

扫一扫二维码分享