队列希望IOS开发(66)之构建自己的分派队列
PS:今天上午,非常郁闷,有很多简单基础的问题搞得我有些迷茫,哎,代码几天不写就忘。目前又不当COO,还是得用心记代码哦!
1 前言
应用 dispatch_queue_create 函数。 创立你自己的、奇特命名的分派队列。
2 代码实例
ZYAppDelegate.m
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
//创立自己命名的队列
dispatch_queue_t firstSerialQueue = dispatch_queue_create("ZYAppDelegate.GCD.serialQueue1", 0);
//执行Block
dispatch_async(firstSerialQueue, ^{
NSUInteger counter = 0;
for (counter = 0;counter < 5;counter++){
NSLog(@"First iteration, counter = %lu", (unsigned long)counter);
} });
dispatch_async(firstSerialQueue, ^{
NSUInteger counter = 0;
for (counter = 0;
counter < 5;
counter++){
NSLog(@"Second iteration, counter = %lu", (unsigned long)counter);
} });
dispatch_async(firstSerialQueue, ^{
NSUInteger counter = 0;
for (counter = 0;
counter < 5;
counter++){
NSLog(@"Third iteration, counter = %lu", (unsigned long)counter);
} });
//释放队列
dispatch_release(firstSerialQueue);
self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
// Override point for customization after application launch.
self.viewController = [[[ZYViewController alloc] initWithNibName:@"ZYViewController" bundle:nil] autorelease];
self.window.rootViewController = self.viewController;
[self.window makeKeyAndVisible];
return YES;
}
运行后控制台结果
2013-05-12 11:41:59.221 GCDQueueTest2[1030:1303] First iteration, counter = 0
2013-05-12 11:41:59.223 GCDQueueTest2[1030:1303] First iteration, counter = 1
2013-05-12 11:41:59.223 GCDQueueTest2[1030:1303] First iteration, counter = 2
2013-05-12 11:41:59.224 GCDQueueTest2[1030:1303] First iteration, counter = 3
2013-05-12 11:41:59.225 GCDQueueTest2[1030:1303] First iteration, counter = 4
2013-05-12 11:41:59.226 GCDQueueTest2[1030:1303] Second iteration, counter = 0
2013-05-12 11:41:59.227 GCDQueueTest2[1030:1303] Second iteration, counter = 1
2013-05-12 11:41:59.228 GCDQueueTest2[1030:1303] Second iteration, counter = 2
2013-05-12 11:41:59.229 GCDQueueTest2[1030:1303] Second iteration, counter = 3
2013-05-12 11:41:59.230 GCDQueueTest2[1030:1303] Second iteration, counter = 4
2013-05-12 11:41:59.232 GCDQueueTest2[1030:1303] Third iteration, counter = 0
2013-05-12 11:41:59.232 GCDQueueTest2[1030:1303] Third iteration, counter = 1
2013-05-12 11:41:59.233 GCDQueueTest2[1030:1303] Third iteration, counter = 2
2013-05-12 11:41:59.233 GCDQueueTest2[1030:1303] Third iteration, counter = 3
2013-05-12 11:41:59.234 GCDQueueTest2[1030:1303] Third iteration, counter = 4
3 结语
以上是所有内容,希望对大家有所帮助。
Demo下载地址:http://download.csdn.net/detail/u010013695/5363539
文章结束给大家分享下程序员的一些笑话语录:
警告
有一个小伙子在一个办公大楼的门口抽着烟,一个妇女路过他身边,并对他 说, “你知道不知道这个东西会危害你的健康?我是说, 你有没有注意到香烟 盒上的那个警告(Warning)?”
小伙子说,“没事儿,我是一个程序员”。
那妇女说,“这又怎样?”
程序员说,“我们从来不关心 Warning,只关心 Error”

浙公网安备 33010602011771号