iOS开发
未读
多线程的安全隐患以及队列组和线程锁
多线程确实可以大大提高我们的app的运行效果和体验 但是有时候也容易引发一些问题 比如资源的抢占问题 多个线程同时访问同一个对象 同一个文件或者变量 先简单介绍一下自旋锁和互斥锁 自旋锁是高级锁 不会进入休眠 会一直在那里等待 处于忙等状态 互斥锁在等待的时候会进入休眠 然后等待唤醒 不过进入睡眠和
iOS开发
未读
Block的相关知识
什么是block? block是将函数及其执行上下文封装起来的对象 Block 截获变量 请看下面一段代码执行之后的打印结果是多少? 局部变量
int number = 6;
int(^Block)(int) = ^int(int num){
return num * number;
iOS开发
未读
OC方法调用(消息机制)
OC的方法调用:消息机制 给方法调用者发送消息 objc_msgSend(id, SEL, ...) OC中的方法调用,其实都是转换成objc_msgSend函数调用 主要分为 1.消息发送 2.动态方法解析 3.消息转发 如果三个流程都无法找到则会报一个非常经典的错误 unrecognized s
iOS开发
未读
NSString是否可以使用assign、strong修饰,为什么不用assign,除了内存?
assign是用来修饰基本数据类型的,他不会对引用计数有任何影响,而字符串是一个对象,肯定需要设计到内存管理相关的东西,assign修饰的对象在此对象释放的时候,指针地址依然存在,不会被置为nil,这就会造成很严重的问题,也就是会产生野指针。但是用weak来修饰的话在对象释放的时候会把指针置为nil
iOS开发
未读
我为什么要开始写博客?
其实做到现在 感觉还是个UI工程师 就是没有啥技术深度 仅仅是在上班中完成产品的需求 然后解决测试提出的BUG 虽然平时也会去各大技术平台看看别人的博客 文章 但是却很少自己去沉下心来思考 或者自己去思考下这个实现的原理 说到底就是知其然不知其所以然 渐渐的发现 程序员不应也不该仅仅止于此 最近又把