Cocoa程序退出前发送HttpRequest请求

最近在视频投送项目中遇到一个奇葩问题,花费了一整天时间才得以解决。这个问题比较隐晦,值得记录一下。

根据功能需要,需要在cocoa程序退出前,发送一个关闭设备的指令,本质上就是post一个Http请求,用于中止当前出于投送状态的设备。

Read more

解除NSTimer潜在的“保留环”问题

NSTimer是Foundation框架中的一个使用频率很高的类,然而其调用过程中很容易引入潜在的“保留环“问题。可能是因为NSTimer的提供的API足够便利与顺手,以至于这个问题不容易被察觉到。这篇博客旨在阐述这个问题并提供解决方法。

Read more

KVO的缺陷

最近在学习和研究Cocoa库的KVO特性,期间发现大神Mike Ash的一篇关于讲述KVO缺陷的博客,觉得很有学习价值,遂想试着翻译以加深理解。

Read more

Cocoa RunLoop 系列之Configure Custom InputSource

在上一篇博客Cocoa RunLoop 系列之基础知识介绍了RunLoop的InpuSource有两种,分别是:

  • 是基于Mach端口且由内核触发的source1
  • 自定义且需要手动触发的source0。

其中source0包括两种自定义形式:一种是Apple实现的自定义InputSource,提供了一系列接口,直接调用即可;另外一种就是由用户根据开发需要完全自定义实现。本文要介绍的就是后者。

Read more

Cocoa RunLoop 系列之基础知识

这篇博客主要结合Apple开发者文档和个人的理解,写的一篇关于Cocoa RunLoop基本知识点的文章。在文档的基础上,概况和梳理了RunLoop相关的知识点。

Read more