Arthur Ethan

Results 10 comments of Arthur Ethan

Should not lazy initialize serial queue, because it may cause data race

> 对于程序中获取所有image信息的数据结构AppImages看到只在一处进行初始化构建,但是实际中某些image是可能在运行时动态加载和卸载的,因此需要有一个机制能够在运行时动态更新所有的image信息。 1、3点赞同,第二点有疑问望解答,所说的运行时动态加载和卸载场景有哪些?除了不能上架AppStore的app,应该动态库(系统库除外)都是在启动的时候已经load成功的吧?

> > > 对于程序中获取所有image信息的数据结构AppImages看到只在一处进行初始化构建,但是实际中某些image是可能在运行时动态加载和卸载的,因此需要有一个机制能够在运行时动态更新所有的image信息。 > > > > > > 1、3点赞同,第二点有疑问望解答,所说的运行时动态加载和卸载场景有哪些?除了不能上架AppStore的app,应该动态库(系统库除外)都是在启动的时候已经load成功的吧? > > 在工程里面创建动态库 target ,主 target 不依赖这个动态库 target ,打包时,这个动态库不会出现在 mach-o 的依赖中,没有对应的 LC_LOAD_DYLIB ,不过动态库是在 .app 里面的,可以通过 dlopen 打开 学习了,不过使用dlopen的话,目前apple 会...

> 利用了libmalloc 中的某个函数指针 源码中判断了malloc_logger 是否存在,如果存在,则调用对应的方法,但怎么知道iOS系统是否使用了这个函数的呢?

大概了解了,malloc_logger 是一个钩子函数 hook到了common_stack_logger这个函数上实现了自定义的调用,但是这么做的代价就是disable了系统对于malloc_logger的实现(比如源码中的这个功能`turn_on_stack_logging`)

这是我的解析前的日志,猜测写日志丢数据了,导致解析是0K,仓库版本是1.3