美文网首页
动态库及静态库

动态库及静态库

作者: Geor9e | 来源:发表于2017-07-04 11:15 被阅读0次

    .a文件肯定是静态库,.dylib肯定是动态库,.framework可能是静态库也可能是动态库;

    静态库在链接时,会被完整的复制到可执行文件中,如果多个App都使用了同一个静态库,那么每个App都会拷贝一份,缺点是浪费内存。类似于定义一个基本变量,使用该基本变量是是新复制了一份数据,而不是原来定义的;

    动态库不会复制,只有一份,程序运行时动态加载到内存中,系统只会加载一次,多个程序共用一份,节约了内存。类似于使用变量的内存地址一样,使用的是同一个变量;

    但是项目中如果使用了自己定义的动态库,苹果是不允许上架的,在iOS8.0以后苹果开放了动态加载.dylib的接口,用于挂载.dylib动态库

    相关文章

      网友评论

          本文标题:动态库及静态库

          本文链接:https://www.haomeiwen.com/subject/nyithxtx.html