
Objective-C学习记述一
可变不可变基础对象 在Objective-C中,有很多基础对象都有可变和不可变两种版本: 不可变: NSString: 代表不可变的文本字符串。 NSArray: 代表不可变的对象数组。 NSDictionary: ...
可变不可变基础对象 在Objective-C中,有很多基础对象都有可变和不可变两种版本: 不可变: NSString: 代表不可变的文本字符串。 NSArray: 代表不可变的对象数组。 NSDictionary: ...
Windows 日志 可以通过现有日志来观察 当不方便附加进程时,可以通过写文件的方法写日志 Visual Studio 附加到进程 CLion 附加到进程 windbg Linux 日志 应用程序日志 var/lo...
Intel芯 重启有了声音后按住command + R 直到苹果界面显示了出来后释放 M芯片 长按关机键 根据提示继续按住 修改SIP 根据上面的方法进入了Recovery界面后 点击上方的实用工具 打开一个终端,先...
自旋锁 用ATOMIC_FLAG_INIT进行了flag的初始化 它确保了flag的初始状态是清除(或说“未设置”)状态 lock调用了test_and_set方法来试图获取锁 test_and_set会检查flag...
背景 管理器用于管理多个任务 接入了管理器的模块,会根据自己要做的事情,来生成不同的任务 而这些任务的生成,是由接入了管理器的模块,通过一些重要的数据(比如目标数据包的编号,以及目标所在的位置,要求管理器执行的任务类...
Windows 安装 为了确定安装目标,在安装前后调用了get_reg_items reg_helper reg; auto res1 = reg.get_reg_items(); auto res = create...
概述 zlib库是一个广泛使用的压缩/解压缩库 下面实现是用了zlib 1.3版本的代码和相关库 具体是使用了zlib源码中带的minizip 其中的minizip扩展提供了处理ZIP文件的功能 解压 在解压之前可能...
线程池 创建线程池方法一 调用async_factory_impl::create创建线程池 但是这个函数实际作用是用于创建一个记录器 由于需要一个线程池对象参数,所以在创建记录器之前做了个检查,如果还不存在线程池,...
临时方法 执行下述命令 apt install open-vm-tools sudo vmhgfs-fuse .host:/ /mnt/hgfs 重启虚拟机会失效,需要重新执行 sudo vmhgfs-fuse .h...
WIN32_LEAN_AND_MEAN 一个预处理宏,用于控制 Windows 头文件中包含哪些内容 具体来说,定义这个宏会减少 Windows 头文件中包含的一些不常用的头文件和 API,从而减小编译时间并减少编译...