您的位置:首页 > 产品设计 > UI/UE

使用NSOperation和NSOperationQueue用来实现多线程

2012-07-17 14:00 337 查看
============================================================博文原创,转载请声明出处电子咖啡(原id蓝岩)============================================================
新建MyOperation继承NSOperation,重写main函数来进行我们的操作
@interface MyOperation : NSOperation

@end


@implementation MyOperation

- (id)init
{
self = [super init];
if (self) {
// Initialization code here.
}

return self;
}
-(void)main{
for (int i=0; i<100; i++) {
NSLog(@"MyOperation --------%i",i);
[NSThread sleepForTimeInterval:1]; //设置时间sleep间隔
}
}
@end

主线程中调用
NSOperationQueue * queue = [[NSOperationQueue alloc] init]; //新建NSOperationQueue队列
[queue addOperation:[[MyOperation alloc]init]]; //将MyOperation添加至队列中,MyOperation立即开始执行
注意,我在单元测试中进行线程测试失败,因为单元测试的主线程生命周期短,不可以进行长时间的多线程测试
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息