《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. button 禁止

    1.按钮的id为btnzhuce==> 控制按钮为禁用:  $("#btnzhuce").attr({"disabled":"disabled& ...

  2. 面向过程MySQL数据库链接操作

    刚好今天复习到这个章节,将就发布出来,就当是为自己复习了 //链接数据库 $link = mysqli_connect('localhost/IP地址','用户名','密码','数据库名'); //设 ...

  3. java中final的用法

    final从字面翻译来看,有最后的,最终的;  决定性的;  不可更改的等含义,在java里面主要还是“不可改变的”这层意思,不可改变或者不想改变的final主要用在类.方法.数据这三个方面. 一.f ...

  4. thinkphp 3+ 观后详解 (5)

    static public function dispatch() { $varPath = C('VAR_PATHINFO'); $varAddon = C('VAR_ADDON'); $varMo ...

  5. GitHub 上排名前 100 的 Android 开源库进行简单的介绍

    若有任何疑问可通过邮件或微博联系我 项目名称 项目简介 1. react-native 这个是 Facebook 在 React.js Conf 2015 大会上推出的基于 JavaScript 的开 ...

  6. How To: Perl TCP / UDP Socket Programming using IO::Socket::INET

    http://www.thegeekstuff.com/2010/07/perl-tcp-udp-socket-programming/ In this article, let us discuss ...

  7. 汽车常用的ECU芯片

    Power Train ECU的CPU用的比较多的基本来自于Infineon,ST,Freescale BOSCH的16位ECU M(E)7系列主要使用C167内核的CPU,早期的M(E)7系列使用西 ...

  8. java android ExecutorService 线程池解析

    ExecutorService: 它也是一个接口,它扩展自Executor接口,Executor接口更像一个抽象的命令模式,仅有一个方法:execute(runnable);Executor接口简单, ...

  9. HDU 4757 Tree 可持久化字典树

    Tree Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=4757 Des ...

  10. 如何在C#中使用全局鼠标、键盘Hook

    今天,有个同事问我,怎样在C#中使用全局钩子?以前写的全局钩子都是用unmanaged C或C++写个DLL来实现,可大家都知道,C#是基于.Net Framework的,是managed,怎么实现全 ...