1.进程与线程 进程:1.进程是一个具有一定独立功能的程序关于某次数据集合的一次运行活动,它是操作系统分配资源的基本单元.2.进程是指在系统中正在运行的一个应用程序,就是一段...
1.进程与线程 进程:1.进程是一个具有一定独立功能的程序关于某次数据集合的一次运行活动,它是操作系统分配资源的基本单元.2.进程是指在系统中正在运行的一个应用程序,就是一段...
前言: 最近把 iOS 面试中可能会遇到的问题整理了一番, 题目大部分是网上收录的, 方便自己巩固复习, 也分享给大家; 希望对大家有所帮助! 对于答案,不一定都合适,欢迎大...
定义 Block是一个里面存储了指向定义block时的代码块的函数指针,以及block外部上下文变量信息的结构体,简单说就是:带有自动变量的匿名函数 Block对象内存相关 ...
新创建的KVO类里调用的super set***方法,这是如果子类实现了set方法会沿用之前的逻辑,没有实现就直接调用父类的。KVO类只是一层转发。
KVO原理分析该文章属于刘小壮原创,转载请注明:刘小壮[https://www.jianshu.com/u/2de707c93dc4] 介绍 KVO全称KeyValueObserving,...
目录 2020 阿里、字节iOS面试题之Runtime相关问题1[https://www.jianshu.com/p/7f94db2e5928] 2020 阿里、字节iOS面...
该文章属于刘小壮原创,转载请注明:刘小壮[https://www.jianshu.com/u/2de707c93dc4] 好久没写博客了,前后算起来刚好有一年了。这期间博客也...
目录 2020 阿里、字节iOS面试题之Runtime相关问题1[https://www.jianshu.com/p/7f94db2e5928] 2020 阿里、字节iOS面...
这个栏目将持续更新--请iOS的小伙伴关注! (答案不唯一,仅供参考,文章最后有福利) iOS面试题大全(上)[https://www.jianshu.com/c/31a51...
目录 2020 阿里、字节iOS面试题之Runtime相关问题1[https://www.jianshu.com/p/7f94db2e5928] 2020 阿里、字节iOS面...
还有一个问题OC中class都默认用一个metaClass的描述是不是不够准确,本质上metaClass还是一个Class,每一个Class都会对应一个Class的实例作为metaClass,然后这个示例会根据Class的SuperClass的情况设置自己的isA和其他信息。
iOS面试题:为什么Objective-C中有MetaClass这个设计?前置知识 首先简单分析下在Objective-C中,对象是什么。下面源码基于Runtime-709[https://opensource.apple.com/tarballs...
博主思考的不错,点赞!
下面这个方法很重要,正好和OC的内存模型图一一对应
void set_superclass(Class cls, Class supercls, bool cls_is_new)
{
Class meta = cls->ISA();
if (supercls) {
cls->superclass = supercls;
meta->superclass = supercls->ISA();
meta->initIsa(supercls->ISA()->ISA());
// Propagate C++ cdtors from superclass.
if (supercls->info & CLS_HAS_CXX_STRUCTORS) {
if (cls_is_new) cls->info |= CLS_HAS_CXX_STRUCTORS;
else cls->setInfo(CLS_HAS_CXX_STRUCTORS);
}
// Superclass is no longer a leaf for cache flushing
if (supercls->info & CLS_LEAF) {
supercls->clearInfo(CLS_LEAF);
supercls->ISA()->clearInfo(CLS_LEAF);
}
} else {
cls->superclass = Nil; // superclass of root class is nil
meta->superclass = cls; // superclass of root metaclass is root class
meta->initIsa(meta); // metaclass of root metaclass is root metaclass
// Root class is never a leaf for cache flushing, because the
// root metaclass is a subclass. (This could be optimized, but
// is too uncommon to bother.)
cls->clearInfo(CLS_LEAF);
meta->clearInfo(CLS_LEAF);
}
}
iOS面试题:为什么Objective-C中有MetaClass这个设计?前置知识 首先简单分析下在Objective-C中,对象是什么。下面源码基于Runtime-709[https://opensource.apple.com/tarballs...
前置知识 首先简单分析下在Objective-C中,对象是什么。下面源码基于Runtime-709[https://opensource.apple.com/tarballs...
前言 Blocks是C语言的扩充功能,而Apple 在OS X Snow Leopard 和 iOS 4中引入了这个新功能“Blocks”。从那开始,Block就出现在iOS...
写这篇文章的起因: 从一个对象收到一个它无法响应的方法到崩溃之间发生了什么?这是J_Knight在最近在博客里面问到的一个问题。其实本质上是在问iOS的消息转发机制。类似的原...
这篇文章源于美团面试官问的我一个问题,为什么Objective-C中有Class和MetaClass这种设计?去掉是否可以?当时的我并没有深入思考过这个问题,而网上搜索的结果...
1.概念 在JavaScript中,this 是指当前函数中正在执行的上下文环境,因为这门语言拥有四种不同的函数调用类型: 函数调用 alert('hello world!'...
”私有库需要加上sources路径,并且要有权限“ 这个在哪里加?
podspec文件验证时候遇到的问题问题:pod install 私有库 解决方法:私有库没有权限,加权限 问题: 解决方法:私有库需要加上sources路径,并且要有权限 iOS组件化学习(4)Unable ...
@唐仁于 可以边下载边播放的,你看看其他评论,有提供思路,我自己的项目实现的是边下边播。
iOS流媒体开发之三:HLS直播(M3U8)回看和下载功能的实现尊重知识,转发请注明出处:iOS流媒体开发之三:HLS直播(M3U8)回看和下载功能的实现 概要流媒体开发第一篇文章就说要把这些不是随便就可以百度到的知识献给“简书”,拖了一...
思路很清晰
iOS 唤起APP之Universal Link(通用链接)包含Xcode11.0的配置方式和iOS13出现的问题。 什么是Universal Link(通用链接) Universal Link(通用链接)是Apple在iOS9推出的...