欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

为何[nsthread exit]会报错:thread 3 signal sigabrt? 有完整 救命代码

更新时间: 2014-01-05 02:36:39 责任编辑: Author_N1

 

为什么[NSThread exit]会报错:Thread 3 signal SIGABRT? 有完整 救命代码

#import "AppDelegate.h"

@implementation AppDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    // Override point for customization after application launch.
    self.window.backgroundColor = [UIColor whiteColor];
    [self.window makeKeyAndVisible];
    
    //创建一个线程队列
    NSOperationQueue *theradQueue=[[NSOperationQueue alloc] init];
    //设置最大同时多少线程
    [theradQueue setMaxConcurrentOperationCount:1];
    //添加线程操作对像
    NSInvocationOperation *op =[[NSInvocationOperation alloc] initWithTarget:self selector:@selector(mutableThread:) object:@"test"];
    //设置纯种优先级别
    op.queuePriority=NSOperationQueuePriorityHigh;
    [theradQueue addOperation:op];
    
    for(int i=0; i<=100; i++)
    {NSLog(@"主线程 %d",i);
    }
    
    return YES;
}

-(void )mutableThread:(NSString *)t
{
    //    NSLog(@"mutableThread %@",t);
    for(int i=0; i<=100; i++)
    {
        NSLog(@"子线程 %d",i);
    }
    
    //跳到主线程进行执行 waitUntilDone 英 [ənˈtɪl] 美 [ʌnˈtɪl]  prep.到…为止; 在…以前    conj.到…为止,在…以前; 直到…才 是否要等待方法执行完成后再继续执行
    [self performSelectorOnMainThread:@selector(mutableThreadCompleter:) withObject:@"OK" waitUntilDone:YES];
    //暂停1秒
    [NSThread sleepForTimeInterval:1];
    NSLog(@"子线程 完成");
    //退出线程
    [NSThread exit];       //? 这里报错:Thread 3 signal SIGABRT
}

-(void) mutableThreadCompleter:(NSString *)t
{
    BOOL isMain =[NSThread isMainThread];
    NSLog(@"线程完成 %@ 主线程%@",t,isMain?@"YES":@"NO");
}

@end


为什么[NSThread exit]会报错:Thread 3 signal SIGABRT? 有完整 救命代码

谢谢
--参考方法--
换成return试下?
我的是C++ 用pthread_exit也是受到SIGABRT
http://bbs.csdn.net/topics/390656401
--参考方法--
基本概念都不清楚!回去看看书吧。
--参考方法--
NSOperationQueue里的操作在完成后会自动标记自身状态为完成后退出线程队列的,不需要你手动去强制退出。而且操作一旦开始也不能强制退出。再而且,NSThread跟操作不属于一类多线程概念= =
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:36:39
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/12061/
本文WWW.DOC100.NET DOC100.NET版权所有。