《Objective-C 高级编程:iOS与OS X多线程和内存管理》
基本信息
原书名: Pro Multithreading and Memory Management for iOS and OS X: with ARC, Grand Central Dispatch, and Blocks
原出版社: Apress
作者: (日)坂本一树 (日)古本智彦
译者: 黎华
丛书名: 图灵程序设计丛书
出版社:人民邮电出版社
ISBN:9787115318091
上架时间:2013-5-28
出版日期:2013 年6月
开本:16开
页码:186
版次:1-1
所属分类:计算机 > 软件与程序设计 > 移动开发 > iPhone
内容简介
计算机书籍
  《objective-c 高级编程:ios与os x多线程和内存管理》在苹果公司公开的源代码基础上,深入剖析了对应用于内存管理的arc以及应用于多线程开发的blocks和gcd。这些新技术看似简单,实则非常容易成为技术开发的陷阱,开发者仅靠阅读苹果公司的文档是不够的。
   《objective-c 高级编程:ios与os x多线程和内存管理》适合有一定基础的ios开发者阅读。
目录
《objective-c 高级编程:ios与os x多线程和内存管理》
第1章 自动引用计数  1
1.1  什么是自动引用计数  2
1.2  内存管理/引用计数  2
1.2.1  概要  2
1.2.2  内存管理的思考方式  5
1.2.3  alloc/retain/release/dealloc实现  13
1.2.4  苹果的实现  17
1.2.5  autorelease  20
1.2.6  autorelease实现  24
1.2.7  苹果的实现  26
1.3  arc规则  29
1.3.1  概要  29
1.3.2  内存管理的思考方式  30
1.3.3  所有权修饰符  30
1.3.4  规则  50
1.3.5  属性  62
1.3.6  数组  63
1.4  arc的实现  65
1.4.1  __strong修饰符  65
.1.4.2  __weak修饰符  67
1.4.3  __autoreleasing修饰符  75
1.4.4  引用计数  76
第2章 blocks  79
2.1  blocks概要  80
2.1.1  什么是blocks  80
2.2  blocks模式  83
2.2.1  block语法  83
2.2.2  block类型变量  85
2.2.3  截获自动变量值  88
2.2.4  __block说明符  88
2.2.5  截获的自动变量  89
2.3  blocks的实现  91
2.3.1  block的实质  91
2.3.2  截获自动变量值  99
2.3.3  __block说明符  102
2.3.4  block存储域  108
2.3.5  __block变量存储域  117
2.3.6  截获对象  121
2.3.7  __block变量和对象  126
2.3.8  block循环引用  128
2.3.9  copy/release  134
第3章 grand central dispatch  137
3.1  grand central dispatch(gcd)概要  138
3.1.1  什么是gcd  138
3.1.2  多线程编程  140
3.2  gcd的api  144
3.2.1  dispatch queue  144
3.2.2  dispatch_queue_create  147
3.2.3  main dispatch queue/global dispatch queue  150
3.2.4  dispatch_set_target_queue  153
3.2.5  dispatch_after  154
3.2.6  dispatch group  155
3.2.7  dispatch_barrier_async  157
3.2.8  dispatch_sync  160
3.2.9  dispatch_apply  161
3.2.10  dispatch_suspend / dispatch_resume  163
3.2.11  dispatch semaphore  164
3.2.12  dispatch_once  166
3.2.13  dispatch i/o  167
3.3  gcd实现  169
3.3.1  dispatch queue  169
3.3.2  dispatch source  171
附录a  arc、blocks、gcd使用范例  176
附录b  参考资料  182
图书信息来源:互动出版网

Objective-C 高级编程:iOS与OS X多线程和内存管理的更多相关文章

  1. 《Objective-C高级编程:iOS与OS X多线程和内存管理》读后感

    拿到这本书的第一感觉是非常薄,可是内容就如同序里面所说,这不是一本面向刚開始学习的人的书,比較有深度,对C/C++全然不熟悉的话非常多东西会看不明确. 尽管此书在技术点上仅仅谈到了ARC.Blocks ...

  2. 【转】iOS夯实:ARC时代的内存管理

    iOS夯实:ARC时代的内存管理 什么是ARC Automatic Reference Counting (ARC) is a compiler feature that provides autom ...

  3. iOS夯实:ARC时代的内存管理

    iOS夯实:ARC时代的内存管理 文章转自 ARC时代的内存管理 什么是ARC Automatic Reference Counting (ARC) is a compiler feature tha ...

  4. iOS学习08之C语言内存管理

    本次主要学习和理解C语言中的内存管理 1.存储区划分 按照地址从高到低的顺序:栈区,堆区,静态区,常量区,代码区 1> 栈区:局部变量的存储区域 局部变量基本都在函数.循环.分支中定义 栈区的内 ...

  5. iOS开发ARC机制下的内存管理技术要点

    转载一篇: iOS开发ARC内存管理技术要点.ARC内存管理原则总结.iOS ARC内存管理总结 ARC内存管理机制 (一)ARC的判断准则: 只要没有任何一个强指针指向该对象,该对象就会被释放. ( ...

  6. 【iOS开发-33】学习手动内存管理临时抛弃ARC以及retain/assign知识——iOSproject师面试必考内容

    我们为什么须要内存管理?当使用内存达到40M和45M时候会发出警告,假设不处理,占用内存达到120M时直接强制关闭程序. 所以出现闪退除了是程序出现逻辑错误,还有可能是内存使用过大. (1)创建一个对 ...

  7. iOS开发系列-Foundation与CoreFoundation内存管理

    概述 对于初学者来说,可能仅只能将ARC用在objective-c对象上(也即继承自NSObject的对象),但是如果涉及到较为底层的东西,比如Core Foundation中的malloc()或者f ...

  8. iOS内存管理部分内容

    Objective-C 高级编程 iOS与OS X多线程和内存管理第一章部分讲述了关于ARC的内容,还讲述了关于修饰符的问题,还讲了好多底层的实现的内容,这些底层实现却往往是在面试的过程中经常被遇到的 ...

  9. iOS内存管理布局及管理方案-理论篇

    苹果设备备受欢迎的背后离不开iOS优秀的内存管理机制,那iOS的内存布局及管理方案是怎样的呢?我们一起研究下. 内存管理分为五大块 栈区(stack):线性结构,内存连续,系统自己管理内存,程序运行记 ...

随机推荐

  1. Codeforces Round #365 (Div. 2) D. Mishka and Interesting sum (离线树状数组+前缀xor)

    题目链接:http://codeforces.com/contest/703/problem/D 给你n个数,m次查询,每次查询问你l到r之间出现偶数次的数字xor和是多少. 我们可以先预处理前缀和X ...

  2. WEB数据挖掘(十三)——关联规则与序列模式(1)

    一.Apriori算法简介:  Apriori算法是一种挖掘关联规则的频繁项集算法,其核心思想是通过候选集生成和情节的向下封闭检测两个阶段来挖掘频繁项集. Apriori(先验的,推测的)算法应用广泛 ...

  3. inpuy type=date

    http://www.w3schools.com/html/html_form_input_types.asp http://caniuse.com/#feat=input-datetime 浏览器兼 ...

  4. MySQL alter

    1:删除列 ALTER TABLE [表名字] DROP [列名称] 2:增加列 ALTER TABLE [表名字] ADD [列名称] INT NOT NULL  COMMENT '注释说明' 3: ...

  5. 转载:你可能没注意的CSS单位

    出自:http://www.cnblogs.com/dolphinX/p/4097693.html 扶今追昔 CSS中的单位我们经常用到px.pt.em.百分比,px和pt不用多说 em em是相对单 ...

  6. Java Zip压缩实现

    最近在自学javaWeb,先复习一下java,把还给老师的东西再找回来(知识如果不用很快就会忘记啊).. 今天看到了zip压缩,决定要整理一下. java将有关zip压缩的内容都封装在java.uti ...

  7. swift 与 指针初级使用

    swift 里面对应C 的基础类型前面加C,CInt.CBool和CChar UnsafePointer<CChar> 对应C的 const char *;常量指针不可变 UnsafeMu ...

  8. 浅析WINFORM工具条的重用实现

    一直以来,我都想看看别人家的工具栏重用(图1)到底是如何实现的,但在网上搜索了很久都没有找到过,即使找到一些程序,要么就是把这个工具栏写在具体的画面(图2),要么就是没有源代码的, 我在想,是否别人也 ...

  9. uva539 The Settlers of Catan

    The Settlers of Catan Within Settlers of Catan, the 1995 German game of the year, players attempt to ...

  10. 怎样解决VirtrualBox不能新建64bit的系统的问题

    假设你的VirtrualBox不能新建64bit的虚拟机一般有以下两个原因: 1.电脑是32位的,不支持创建64bit的虚拟机 2.电脑不支持Intel VT-x,或者是Intel VT-x没有打开 ...