zoukankan      html  css  js  c++  java
  • 多线程 线程的状态

    //  Created by dyf on 14-6-23.
    //  Copyright (c) 2014年 ___FULLUSERNAME___. All rights reserved.
    //
     
    #import "DYFViewController.h"
     
    @interface DYFViewController ()
    @property (nonatomic, strong) NSThread *thread;
    @end
     
    @implementation DYFViewController
     
    - (void)viewDidLoad
    {
        [super viewDidLoad];
        // Do any additional setup after loading the view, typically from a nib.
         
        self.thread = [[NSThread alloc] initWithTarget:self selector:@selector(test) object:@"111"];
        self.thread.name = @"1111111111";
    }
     
    - (void)test {
        //
        NSLog(@"startedtest------%@", [[NSThread currentThread] name]);
         
    //    // 阻塞状态2
    //    NSDate *date = [NSDate dateWithTimeIntervalSinceNow:5.0];
    //    [NSThread sleepUntilDate:date];
         
    //    // 阻塞状态1
    //    [NSThread sleepForTimeInterval:5.0];
         
        for (int i = 0; i < 999; i++) {
            NSLog(@"test-----%d------%@", i, [[NSThread currentThread] name]);
             
            if (i == 50) {
                [NSThread exit];
            }
        }
         
        NSLog(@"endedtest------%@", [[NSThread currentThread] name]);
     
    }
     
    #warning 点击2次屏幕会出现 'NSInvalidArgumentException', reason: '*** -[NSThread start]: attempt to start the thread again',调用已经死的线程会报错
    - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
    {
        // 开启线程
        [self.thread start];
    }
     
     
    @end

     小结:线程的状态大概有5种

     
     
  • 相关阅读:
    八大 IoT 安全关键技术解析
    IoT: 物联网安全测试经验总结
    业务逻辑漏洞挖掘
    从零开始Android逆向教程(二)——什么是Xposed
    Mac terminal commands
    Obj-C 实现 QFileDialog函数
    打开文件所在目录并选择该文件
    Qt样式表使用注意项
    window响应拖拽文件操作
    Window检测网络连接情况
  • 原文地址:https://www.cnblogs.com/Cheetah-yang/p/4664142.html
Copyright © 2011-2022 走看看