iOS多线程学习笔记之一:NSThread常用方法

原文地址:iOS多线程学习笔记之一:NSThread常用方法 作者:wingsmm

NSThread常用方法

#import

#import


@classNSArray, NSMutableDictionary,NSDate;


@interface NSThread :NSObject  {

@private

   id _private;

   uint8_t _bytes[44];

}

//返回当前线程

+ (NSThread*)currentThread; 

// 通过类方法创建一个线程

+(void)detachNewThreadSelector:(SEL)selectortoTarget:(id)targetwithObject:(id)argument;


// 判断是否为多线程

+(BOOL)isMultiThreaded;


- (NSMutableDictionary*)threadDictionary;


+(void)sleepUntilDate:(NSDate *)date;

+(void)sleepForTimeInterval:(NSTimeInterval)ti;

// 退出线程

+ (void)exit;


// 线程属性值

+ (double)threadPriorityNS_AVAILABLE(10_2, 2_0);

+(BOOL)setThreadPriority:(double)pNS_AVAILABLE(10_2, 2_0);


#if MAC_OS_X_VERSION_10_5<= MAC_OS_X_VERSION_MAX_ALLOWED || __IPHONE_2_0<= __IPHONE_OS_VERSION_MAX_ALLOWED


- (double)threadPriorityNS_AVAILABLE(10_6, 4_0);

-(void)setThreadPriority:(double)pNS_AVAILABLE(10_6, 4_0);


// 线程函数地址

+ (NSArray*)callStackReturnAddresses;

+ (NSArray*)callStackSymbols NS_AVAILABLE(10_6,4_0);

// 设置与返回线程名称

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

- (NSString *)name;


// 线程堆栈

-(NSUInteger)stackSize;

-(void)setStackSize:(NSUInteger)s;


// 判断当前线程是否为主线程

- (BOOL)isMainThread;

+(BOOL)isMainThread; // reportswhether current thread is main

+ (NSThread*)mainThread;


//线程对象初始化操作  (通过创建线程对象,需要 手工指定线程函数与各种属性)

-(id)init;// designatedinitializer

//在线程对象初始化时创建一个线程(指定线程函数)

-(id)initWithTarget:(id)targetselector:(SEL)selectorobject:(id)argument;


// 是否在执行

- (BOOL)isExecuting;

// 是否已经结束

- (BOOL)isFinished;


// 是否取消的

- (BOOL)isCancelled;

// 取消操作

- (void)cancel;


// 线程启动

- (void)start;


-(void)main;// thread bodymethod


#endif


@end


你可能感兴趣的:(ios)