在界面上创建了一个NSThread的线程,执行后用sleep停止15秒再执行,但是在这15秒内把此界面关闭了,并且在viewWillDisappear方法中把此线程cancel取消掉,但还是会运行,从网上看了很多人说的都是说cancel和exit的,试了都不行
解决:
其实网上说的cancel不是不可以,只是不理解怎么使用,如果要使用cancel和exit的话必须写个线程类继承NSThread,然后在这个子类中去判断就可以停止了
@implementation MyThread - (void)main { [super main]; while (1) { if (self.isCancelled) { [NSThread exit]; } NSLog(@"MyThread name is %@", [[NSThread currentThread] description]); } } @end