GCD-block

一,block的定义

//申明变量
(void)(^PrintStr)(void);

//定义
PrintStr=^{
    NSLog(@"PrintStr");
};

//调用
PrintStr();

二,修改block之外的变量

block程序块中的变量不对程序块外生效,可以加上_block让其生效。

int a=0;
void (^foo)(void)=^{
    a=1;
}
//foo()中a的值为0
foo();

__block int a=0;
void (^foo)(void)=^{
    a=1;
}
//foo()中a的值被修改为1
foo();

参考资料:

http://www.devtang.com/blog/2012/02/22/use-gcd/

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-05 03:09:02

GCD-block的相关文章

ios面试题整理(答案有的是网上找的,有的是根据理解自己做的)

1.ViewController的生命周期 按结构可以对iOS的所有ViewController分成两类: 1.主要用于展示内容的ViewController,这种ViewController主要用于为用户展示内容,并与用户交互,如UITableViewController,UIViewController. 2.用于控制和显示其他ViewController的ViewController.这种ViewController一般都是一个ViewController的容器.如UINavigation

ios开发 部分内容整理

1.ViewController的生命周期 按结构可以对iOS的所有ViewController分成两类: 1.主要用于展示内容的ViewController,这种ViewController主要用于为用户展示内容,并与用户交互,如UITableViewController,UIViewController. 2.用于控制和显示其他ViewController的ViewController.这种ViewController一般都是一个ViewController的容器.如UINavigation

2014学的block与GCD

Grand Central Dispatch (GCD)是Apple开发的一个多核编程的解决方法. Block是C级别的语法和运行时特性.Block比较类似C函数,但是Block比之C函数,其灵活性体现在栈内存.堆内存的引用,我们甚至可以将一个Block作为参数传给其他的函数或者Block. 我不会详细得写,就直接上Demo,我是用得代码实现布局,当然,使用storyboard布局要简单点 得到图片得地址: 下面是进行布局: 下面是实现click按钮得事件 上面有异步请求,所以得需要下面这些方法

IOS GCD之Block

GCD延迟执行 #pragma mark - GCD 延迟 /**  *  dispatch_after  */ - (void)gcdDelay {     NSLog(@"开始时间.......%@",[NSDate date]);     double delaySecond = 2.0;     dispatch_time_t delayInNanoSeconds = dispatch_time(DISPATCH_TIME_NOW, delaySecond*NSEC_PER_S

iphone ios 如何使用gcd,block

iphone ios 如何使用gcd,block 转自:http://blog.sina.com.cn/s/blog_45e2b66c01010dhd.html 1.GCD之dispatch queue http://www.cnblogs.com/scorpiozj/archive/2011/07/25/2116459.html 2.iOS中GCD的魔力 http://blog.csdn.net/favormm/article/details/6453260 3.官方 ,内容真的很多 http

GCD code block

积累一些代码片段在这里,作为备忘录. + (DRClass *)sharedDR{ //创建小黑,正常ap模式只有一个小黑,so static DRClass *aDR = nil; static dispatch_once_t onceToken; dispatch_once(&onceToken, ^{ aDR = [[self alloc] init]; }); return aDR; } 逐步累积. GCD code block

iOS知识树,知识目录(包括对象、Block、消息转发、GCD、运行时、runloop、动画、Push、KVO、tableview,UIViewController、提交AppStore)

本文旨在总结iOS知识网络,该知识网络罗列出常见UIKit,Foundation的对象特点和一些使用经验:文本编辑采用树的形式,对知识点进行罗列,并标注一些使用经验(★)希望对初学者有用或给一些解决疑难杂症者提供思路:某些知识点会深入探讨:通过总结希望站在一个较高平台的角度全观Objective-C.知识树中有些是原创文章,有些则是转载网络上iOS大神的文章.笔者会尽量详细的介绍各个知识点.当然一个人的知识面是相当有限的,在给各位读者提供知识参考的同时,欢迎大家对本文提意见. /->UIView

iOS GCD中级篇 - dispatch_group的理解及使用

前文我们讲了GCD基础篇,以及同步.异步,并发.并行几个概率的理解. 参考链接: iOS GCD基础篇 - 同步.异步,并发.并行的理解 现在讲一下dispatch_group的概念以及几种场景下的使用 1.关于dispatch_group 把一组任务提交到队列中,这些队列可以不相关,然后监听这组任务完成的事件. 最常见的几个方法: 1.dispatch_group_create创建一个调度任务组 2.dispatch_group_async 把一个任务异步提交到任务组里 3.dispatch_

Block内存管理实例分析

在ios开发中,相信说道block大家都不陌生,内存管理问题也是开发者最头疼的问题,网上很多讲block的博客,但大都是理论性多点,今天结合一些实例来讲解下. 存储域 首先和大家聊聊block的存储域,根据block在内存中的位置,block被分为三种类型: NSGlobalBlock NSStackBlock NSMallocBlock 从字面意思上大家也可以看出来 NSGlobalBlock是位于全局区的block,它是设置在程序的数据区域(.data区)中. NSStackBlock是位于

转 GCD

GCD 深入理解:第一部分 本文翻译自 http://www.raywenderlich.com/60749/grand-central-dispatch-in-depth-part-1 原作者:Derek Selander 译者:@nixzhu 虽然 GCD 已经出现过一段时间了,但不是每个人都明了其主要内容.这是可以理解的:并发一直很棘手,而 GCD 是基于 C 的 API ,它们就像一组尖锐的棱角戳进 Objective-C 的平滑世界.我们将分两个部分的教程来深入学习 GCD . 在这两