前言 NSLog 作为 iOS开发常用的调试和日志打印方法,大家都是很熟悉了,开源社区也为我们贡献了很多非常优秀的日志框架,比如OC中大名鼎鼎的CocoaLumberjack...
前言 NSLog 作为 iOS开发常用的调试和日志打印方法,大家都是很熟悉了,开源社区也为我们贡献了很多非常优秀的日志框架,比如OC中大名鼎鼎的CocoaLumberjack...
这叫原子性,不叫线程安全。
NSMutableArray和NSMutableDictionary多线程安全读写一、容器类多线程读写的问题我们看苹果的官方文档会发现 NSMutableArray 和NSMutableDictionary 都不是线程安全的,这就带来一个问题,主线程我们多...
按照你这个分析,应该是在-[NSObject dealloc]中,weak指针被设置nil,子类的 -dealloc 方法比父类的 -dealloc 会先执行,在子类的 -dealloc 中的访问指向它自己的 weak 指针,应该是能读取到地址的,但实际上在对象 dealloc 执行时,指向它的 weak 指针已经是 nil 了。
iOS weak指针置nil具体过程先看一下delloc的具体实现: dealloc的实现 weak指针置nil 当weak引用指向的对象被释放时,我们需要把指针置为nil 我们在前面已经讲解了,当一个对象释放...
线程切换有可能比锁效率更低,企图用并发栅栏来提高性能是不科学的,而且线程安全也不是一个属性的原子性就能保证的,要放到业务逻辑中具体处理才行。
iOS property关键字详解一、property关键字介绍 简介:属性(property)是Objective-C的一项特性,用于封装对象中的数据。这一特性可以令编译器自动编写与属性相关的存取方法,并且...
第8层:弃坑层,iOS已无前途可言。
iOS 开发者的七层境界乾坤大挪移,此功分七层境界,悟性高者修习,第一层需七年,第二层加倍,如此愈发困难,秘笈作者本人只练至第六层,习至第七层者实是古往今来第一人。 对于iOS开发者而言呢?结合自身...
你不知道它有个`contentInset`属性吗?page的宽度完全可以用这个属性来调整啊
iOS开发中实现UICollectionView的分页效果(一页的宽度不够collectionview的宽度)如果collectionView的宽度和每个item的宽度一样,那么我们只需要设置collectionView的pagingEnabled属性即可实现分页效果。 自定义UIC...
死扣“并行”、“并发”字眼有意思?
就叫并行队列怎么了,它表明指队列里的任务可能会同时执行,这难道有错?
两个任务,如果它们的执行时间有重叠的部分,那么它们在重叠这段时间里,就是并行的,这完全符合概念。
不要太死板,并行队列vs串行队列,多么完美的一对,非要整那么复杂干什么。
iOS 多线程--GCD 串行队列、并发队列以及同步执行、异步执行1 什么是队列(queue) 在开始GCD之前先来说一下队列的概念,因为GCD的任务都是在队列中派发的;队列(queue):是先进先出(FIFO, First-In-Firs...
正常情况下,我们选择文档或文件夹后,可以通过按Command + Delete快捷键把此文档或文件夹快速移进废纸篓。然后按Command + Option + Shift +...
@zzzmh 直到生活狠狠**了你……
9岁女孩常用假币买水果,水果店主跟踪回家,看到躺在床上的人蒙了李三元在市里经营几家水果店。最近李三元在巡视店铺时,发现一个陌生小女孩总是拿10元假币来买一两个水果,起疑的他跟踪小女孩,却无意中收获了梦寐以求的爱情。 李三元的水果店是从父...
666,终于发现此问题。不过,objc1的头文件对于阐述 runtime 机制还是有很大参考意义的,也方便大家理解,根据这个来讲解并没有什么问题。比如看上去objc4和objc1的对 class 的定义差别很大,其实其核心点就是 isa 指针,对于理解其结构是一样的,反而 objc4 的 c++ 语法,让人不容易理解 objc_class 其实也有 isa 指针。
iOS Runtime系列一、objc_class深深的误解推荐阅读:iOS开发——BAT面试题合集(持续更新中) 现在网上讲解的objc_class 绝大部分是错的。18年、19年依然很多童鞋写着错误的Runtime文章发到网上,面...
努力的人最可爱
谁说Runloop跟帧数有关系的?帧数是GPU渲染的刷新频率,Runloop是CPU处理事件的无尽循环,两个不相干的东西,不要再用这个来误导人了。
使用RunLoop 进行卡顿监控在开发中,我们可以使用Xcode自带的Instruments工具的Core Animation来对APP运行流畅度进行监控,使用FPS这个值来衡量。这个工具我们只能知道哪个界...
小伙子,你的思想很危险啊!
程序员干的不开心怎么办?
这种做法治标不治本啊!要防网络请求重复,应该从控制网络框架上着手吧,毕竟触发网络请求的不一定是点击事件啊!防止Push异常,也应该从优化控制器着手吧,你把控制写的臃肿到要1秒才能打开,设置防护时间也是个问题,而且也不仅仅是按钮才能Push。
iOS-UIButton防止重复点击(三种办法)目录 使用场景方法一 设置enabled或userInteractionEnabled属性方法二 借助cancelPreviousPerformRequestsWithTar...
开心一笑:去超市买棒棒糖,我随手拔了一个就往嘴里塞。售货员小妹不解地盯着我,我连忙解释说:放心,先吃也没关系,我又不是不给钱。她点点头仍旧一脸迷茫:可你,为什么从我嘴里拔呢?...
typeof()不是一元运算符,它是编译器关键字,告诉编译器应该把变量作为什么类型去编译,不存在任何运算,更不是什么运算符。
OC中的 typeof() 和 __kindofOC中的 typeof()和__kindof typeof()__weak typeof(self) weakSelf = self;大家都比较熟悉 用于在block中避免循...
文|李弯湾 接吻,可以说是亲密关系中,最重要的一件事了。因为这件事,真的只有亲密、互相喜欢才能在相当长的时间做到。 很多人,别说结婚了,就是才恋爱没多久,就已经不亲吻对方了。...