2014-05-06 19:41:08 +02:00
|
|
|
#import <Foundation/Foundation.h>
|
2015-12-22 12:45:09 +01:00
|
|
|
#import "ArrayUtil.h"
|
2014-05-06 19:41:08 +02:00
|
|
|
#import "DataUtil.h"
|
|
|
|
#import "DictionaryUtil.h"
|
2015-12-22 12:45:09 +01:00
|
|
|
#import "StringUtil.h"
|
2014-05-06 19:41:08 +02:00
|
|
|
|
2015-12-22 12:45:09 +01:00
|
|
|
typedef void (^Action)(void);
|
|
|
|
typedef id (^Function)(void);
|
2014-05-06 19:41:08 +02:00
|
|
|
|
|
|
|
@interface Operation : NSObject
|
|
|
|
|
2015-12-22 12:45:09 +01:00
|
|
|
@property (nonatomic, readonly, copy) Action callback;
|
2014-05-06 19:41:08 +02:00
|
|
|
|
2015-12-22 12:45:09 +01:00
|
|
|
+ (Operation *)operation:(Action)block;
|
2014-05-06 19:41:08 +02:00
|
|
|
|
2015-12-22 12:45:09 +01:00
|
|
|
+ (void)asyncRun:(Action)action onThread:(NSThread *)thread;
|
2014-05-06 19:41:08 +02:00
|
|
|
|
2015-12-22 12:45:09 +01:00
|
|
|
+ (void)asyncRunAndWaitUntilDone:(Action)action onThread:(NSThread *)thread;
|
2014-05-06 19:41:08 +02:00
|
|
|
|
2015-12-22 12:45:09 +01:00
|
|
|
+ (void)asyncRunOnNewThread:(Action)action;
|
2014-05-06 19:41:08 +02:00
|
|
|
|
2015-12-22 12:45:09 +01:00
|
|
|
- (void)run;
|
2014-05-06 19:41:08 +02:00
|
|
|
|
2015-12-22 12:45:09 +01:00
|
|
|
- (SEL)selectorToRun;
|
2014-05-06 19:41:08 +02:00
|
|
|
|
2015-12-22 12:45:09 +01:00
|
|
|
- (void)performOnNewThread;
|
2014-05-06 19:41:08 +02:00
|
|
|
|
2015-12-22 12:45:09 +01:00
|
|
|
- (void)performOnThread:(NSThread *)thread;
|
2014-05-06 19:41:08 +02:00
|
|
|
|
2015-12-22 12:45:09 +01:00
|
|
|
- (void)performOnThreadAndWaitUntilDone:(NSThread *)thread;
|
2014-05-06 19:41:08 +02:00
|
|
|
|
|
|
|
@end
|