因为NSOperation本身是抽象基类,表示一个独立的计算单元,因此如果要创建对象的话,必须使用它的子类。Foundation框架提供了两个具体子类直接供开发者使用,它们就是NSInvocationOperation和NSBlockOperation类。除此之外,还可以自定义子类,只要继承于NSOperation类,实现内部相应的方法即可。下面介绍这三种情况:
1、NSInvocationOperation
NSInvocationOperation类用于将特定对象的特定方法封装成NSOperation,基于一个对象和selector来创建操作。如果已经有现有的方法来执行需要的任务,就可以使用这个类。
接下来,创建一个SingleViewApplication工程,命名为09-NSInvocationOperation,具体代码如下: