autoreleas实现原理

静态库和动态库的区别
1、 形式上
静态库是.a 和 .framework。 动态库是.dylib和 .framework ,xcode8 为.tbd ,本质是.dylib
2、使用上:
静态库,链接时,会被完整的复制到可执行文件中,如果多个APP 使用了同一个静态库,就会有多次拷贝,会占用更多的内存。
动态库,链接时不复制,程序运行时由系统动态的加载到内存,供程序调用,系统只加载一次,多个程序共用,节省内存。

看一下 framework 和 Static Library 的区别
  • framework 既可以制作静态库,也可以制作动态库。
  • Static Library 制作静态库
  • framework 实际上为一站式分享方案,其实是一个文件夹,其中包含代码签名,头文件,二进制执行文件,静态资源文件等,
  • static Library 的产出物只是一个.a 文件,为二进制执行文件。分享给别人的时候,头文件,静态文件需要另外提供
  • staticLibrary 需要设置头文件搜索路径,framework 不需要
posted @ 2022-11-01 18:58  任淏  阅读(31)  评论(0编辑  收藏  举报