RxSwift的使用三步曲 第一步:创建序列 第二步:订阅序列 第三步:发送信号 整体代码 分析代码 1:创建序列后,RxSwift返回了一个observer,在这个闭包内返...
RxSwift的使用三步曲 第一步:创建序列 第二步:订阅序列 第三步:发送信号 整体代码 分析代码 1:创建序列后,RxSwift返回了一个observer,在这个闭包内返...
关于Flutter的状态管理,中文官网解释[https://flutter.cn/docs/development/data-and-backend/state-mgmt/s...
配置flutter需要: Android toolchain这个下载Android Studio然后下载相应的command line tools Flutter在官网[ht...
路由跳转 路由的settings: RouteSettings()也可以在页面B拿到在B界面通过dynamic arguments = ModalRoute.of(conte...
@sychronized可以在多线程下进行递归调用,那么是怎么做到在多线程下进行递归调用的呢?我们通过终端编译然后进行分析。首先,在main.m中,调用 在main.m所在的...
线程死锁 当在主线程执行如上代码的时候,产生了死锁,究竟是怎么样的原因呢?在崩溃信息中,看到了有一个#0 0x00000001005bac61 in (),去源码中去探索有关...
进程是指在系统中正在运行的应用程序,每个进程之间是独立的,每个进程均运行在其专用的且受保护的内存空间内。 线程是进程的基本执行单元,一个进程的所有任务都在线程中执行。进程执行...
在objc_class结构体中,有一个cache_t类型,在这篇内容中,主要探索这个内容存储的数据,以及存储的规律。老样子通过内存位移先得到cache_t的内存地址。 我猜测...
对象的实例方法和成员变量是存储的类对象的结构体class_rw_t中,在class_rw_t中properties里没有成员变量,那么成员变量储存在哪里呢? 实例变量储存位置...
实例对象的isa指针指向 我们都知道每个实例对象都存储一个isa指针,占用8个字节,指向所属的类。获取类对象的三种方式: 打开源码,我们发现class本质是一个objc_cl...
我们每天进行alloc和init一个实例对象的时候,他们内部都发生了什么?让我们进行一个简单的探索。 通过打印地址我们可以发现三者指向同一个地址,那么也就是alloc做了大部...