Chisel-LLDB命令插件,让调试更Easy

LLDB 是一个有着 REPL 的特性和 C++ ,Python 插件的开源调试器。LLDB 绑定在 Xcode 内部,存在于主窗口底部的控制台中。调试器允许你在程序运行的特定时暂停它,你可以查看变量的值,执行自定的指令,并且按照你所认为合适的步骤来操作程序的进展。(这里有一个关于调试器如何工作的...

2018-01-31 11:37:46

阅读数:74

评论数:0

iOS监听weak属性

一.KVO特点         观察者观察的是属性,只有遵循 KVO 变更属性值的方式才会执行KVO的回调方法,例如是否执行了setter方法、或者是否使用了KVC赋值。如果赋值没有通过setter方法或者KVC,而是直接修改属性对应的成员变量,例如:仅调用_name = @&quo...

2018-01-30 11:35:02

阅读数:124

评论数:0

正确使用多线程同步锁@synchronized()

在上篇多线程安全的文章中,我曾推荐过大家使用@synchronized来使得代码获得原子性,从而保证多线程安全。这篇文章向大家介绍一些@synchronized的知识点和应该避免的坑。 @synchronized原理 @synchronized是几种iOS多线程同步机制中最慢的一个,同...

2018-01-30 10:38:00

阅读数:300

评论数:0

关于 @synchronized,这儿比你想知道的还要多

本文翻译自 Ryan Kaplan 的 More than you want to know about @synchronized 因为原文一些内容写的不太准确,我按照我的理解做出了批注和补充。 如果你已经使用 Objective-C 编写过任何并发程序,那么想必是见过 @synch...

2018-01-29 21:52:35

阅读数:61

评论数:0

遍历自身加载的dylib--获取载入地址和ASLR地址等

for (int i = 0; i _dyld_image_count(); i++) { char *image_name = (char *)_dyld_get_image_name(i); const struct mach_header *mh = _dy...

2018-01-29 15:02:08

阅读数:45

评论数:0

sqlite3 多线程和锁 ,优化插入速度及性能优化

一、 是否支持多线程?   SQLite官网上的“Is SQLite threadsafe?”这个问答。 简单来说,从3.3.1版本开始,它就是线程安全的了。而iOS的SQLite版本没有低于这个版本的,当然,你也可以自己编译最新版本。 不过这个线程安全仍然是有限制的,在这篇...

2018-01-29 11:54:00

阅读数:334

评论数:0

网易云音乐锁屏界面实现

最终效果: IMG_0931.PNG 完整的实现思路: App如果需要在锁屏界面上显示相关的信息和按钮, 必须先开启远程控制事件(Remote Control Event), 否则锁屏界面只显示滑动解锁. 实现锁屏界面信息, 将歌曲的相关信息更新到锁屏界面上 实现锁屏界面的事件处理,...

2018-01-21 21:46:21

阅读数:169

评论数:0

EXC_BAD_ACCESS异常 _block_invoke 问题

我们在调用block时,如果这个block为nil,则程序会崩溃,报类似于EXC_BAD_ACCESS(code=1, address=0xc)异常【32位下的结果,如果是64位,则address=0x10】。如图1,这个异常表示程序在试图读取内存地址0xc的信息时出错。 在定义一个...

2018-01-12 16:48:56

阅读数:67

评论数:0

iOS中检测Zoombie对象的具体实现

我们知道,如果在XCode中开启了Zoombie Objects。如图。 那么在一个对象释放后,再次给该对象发送消息,在Xcode控制台中,可看到如下打印信息。这些信息可以帮助我们定位问题。 ZoombieDemo[12275:2841478] *** -[Test test]: mess...

2018-01-12 16:32:40

阅读数:58

评论数:0

深入理解Objective-C:Category

摘要 无论一个类设计的多么完美,在未来的需求演进中,都有可能会碰到一些无法预测的情况。那怎么扩展已有的类呢?一般而言,继承和组合是不错的选择。但是在Objective-C 2.0中,又提供了category这个语言特性,可以动态地为已有类添加新行为。如今category已经遍布于Object...

2018-01-10 14:27:07

阅读数:51

评论数:0

Type Encodings

Type Encodings To assist the runtime system, the compiler encodes the return and argument types for each method in a character string and as...

2018-01-09 17:39:26

阅读数:47

评论数:0

iOS super关键字帮我们做了什么?

× iOS super关键字帮我们做了什么? 本篇文章讲的是super的实际运作原理,如有同学对super与self的区分还有疑惑的,请参考ChenYilong大神的《招聘一个靠谱的iOS》面试题参考答案(上)。 super究竟在干什么? 官方提到的super关键字...

2018-01-08 22:11:33

阅读数:56

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭