Asynchronous execution block with timeout support
- OS X is requried for all iOS development
- XCODE from the App Store.
- GIT is required.
- CocoaPods is required for the iOS dependency management. You should have ruby installed on your machine before install CocoaPods
Source code for the SDK is available on GitHub
$ git clone git@github.com:ifactorylab/IFTimeoutBlock.git
CocoaPods installs all dependencies for the library project
$ cd IFTimeoutBlock
$ pod install
$ open IFTimeoutBlock.xcodeproj
Create a Podfile if not exist, add the line below
pod 'IFTimeoutBlock', '~> 1.0.0'
#import "IFTimeoutBlock.h"
IFTimeoutBlock *block = [[IFTimeoutBlock alloc] init];
IFTimeoutHandler timeoutBlock = ^(IFTimeoutBlock *block) {
// do something to notify timeout.....
};
IFExecutionBlock executionBlock = ^(IFTimeoutBlock *block) {
// send signal to the module to stop timeout timer
[block signal];
// If timedout, block.timedOut should be true
XCTAssertFalse(block.timedOut);
};
[block setExecuteAsyncWithTimeout:2 // timeout in seconds
WithHandler:timeoutBlock
andExecutionBlock:executionBlock];
[block release];
- first version