240 发简信
IP属地:上海
  • dispatch_async(dispatch_get_main_queue(), ^{});
    异步提交 block 到主线程,这里只是提交操作,不是执行操作,main_queue 是同步执行的,所以不会立马执行 block,而是在下一个 runloop 中执行。

    dispatch_async(dispatch_get_main_queue(),^{})存在的一个坑

    可以看到在main thread中,执行顺序并不是和代码顺序一样, 最后执行。 如果不注意的话,可能会导致一些问题。 解决方法 参考SDWebImage的宏定义,判断一下当前...

  • 首先感谢博主的分享,不过提个小建议,在 UITextField 的代理方法中,最好能够将 searchBarShouldBeginEditing 的返回值作为结果返回给 UITextField 的代理。

    iOS11-UISearchBar居中placeholder和icon

    UISearchBar在ios11上的placeHolder和icon默认居左了。。。 下面是实现的居中的效果: 实现方法,自定义UISearchBar: 这样效果就和ios...

  • @shenkaiqiang 还有一种情况是 cache 这个实例的生命周期结束前,也会调用这个代理方法,可以查看一下是否是 cache 实例被销毁了

    NSCache

    NSCache是系统提供的一种类似于集合(NSMutableDictionary)的缓存,它与集合的不同如下: 1. NSCache具有自动删除的功能,以减少系统占用的内存;...

  • 120
    LLVM与Clang的一些事儿

    在说这篇文章之前,首先我们带入一个问题,在Xcode中我们最常使用的一个组合键cmd+b按下之后都进行了哪一些工作?伟大的ARC内存管理方式又是如何实现内存管理的? 又或者我...

  • ARC下的内存泄漏

    ARC下的内存泄漏 ARC全称叫 ARC(Automatic Reference Counting)。在编译期间,编译器会判断对象的使用情况,并适当的加上retain和rel...