zoukankan      html  css  js  c++  java
  • 第一篇:多线程使用

    一、创建和启动线程简单说明

    一个NSThread对象就代表一条线程

    创建、启动线程

    (1) NSThread *thread = [[NSThread alloc] initWithTarget:self selector:@selector(run) object:nil];

    [thread start];

    // 线程一启动,就会在线程thread中执行self的run方法

     

    主线程相关用法

    + (NSThread *)mainThread; // 获得主线程

    - (BOOL)isMainThread; // 是否为主线程

    + (BOOL)isMainThread; // 是否为主线程

     

    其他用法

    获得当前线程

    NSThread *current = [NSThread currentThread];

     

    线程的调度优先级:调度优先级的取值范围是0.0 ~ 1.0,默认0.5,值越大,优先级越高

    + (double)threadPriority;

    + (BOOL)setThreadPriority:(double)p;

     

    设置线程的名字

    - (void)setName:(NSString *)n;

    - (NSString *)name;

     

    其他创建线程的方式

    (2)创建线程后自动启动线程   [NSThread detachNewThreadSelector:@selector(run) toTarget:self withObject:nil];

    (3)隐式创建并启动线程  [self performSelectorInBackground:@selector(run) withObject:nil];

    上述2种创建线程方式的优缺点

    优点:简单快捷

    缺点:无法对线程进行更详细的设置

     

     

     

     

    运行结果:

  • 相关阅读:
    Python 线程池,进程池,协程,和其他
    python 类的特殊成员方法
    Python 进程,线程,协程
    Python Socket第二篇(socketserver)
    Python 面向对象
    Python Socket
    saltstack 基础
    Python 面向对象学习
    Python 常用模块
    日志滚动工具
  • 原文地址:https://www.cnblogs.com/jinchengvs/p/4833764.html
Copyright © 2011-2022 走看看