《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. A - Oulipo

    A - Oulipo Time Limit:1000MS     Memory Limit:65536KB     64bit IO Format:%I64d & %I64u Submit S ...

  2. thinkphp利用行为扩展实现监听器

    1.在User/login函数中添加如下代码 tag('login_listener',$result); //alert('success', '恭喜,登录成功', U('xx/yy')); 去掉跳 ...

  3. iOS摄像头和相册-UIImagePickerController-浅析

    转载自:http://blog.sina.com.cn/s/blog_7b9d64af0101cfd9.html 在一些应用中,我们需要用到iOS设备的摄像头进行拍照,视频.并且从相册中选取我们需要的 ...

  4. 数据库:mongodb与关系型数据库相比的优缺点

      与关系型数据库相比,MongoDB的优点:①弱一致性(最终一致),更能保证用户的访问速度:举例来说,在传统的关系型数据库中,一个COUNT类型的操作会锁定数据集,这样可以保证得到“当前”情况下的精 ...

  5. 分布式文件系统HDFS体系

    系列文件列表: http://os.51cto.com/art/201306/399379.htm 1.介绍 hadoop文件系统(HDFS)是一个运行在普通的硬件之上的分布式文件系统,它和现有的分布 ...

  6. Java多线程技术学习笔记(一)

    目录: 概述 多线程的好处与弊端 JVM中的多线程解析 多线程的创建方式之一:继承Thread类 线程的状态 多线程创建的方式之二:实现Runnable接口 使用方式二创建多线程的好处 多线程示例 线 ...

  7. matlab reshape函数

    语法 (1)B = reshape(A,m,n) 使用方法: B=reshape(A,m,n) 返回m*n矩阵B,它的元素是获得A的行宽度.假设A没有m*n元素,得到一个错误结果. 样例: <s ...

  8. Codeforces Round #338 (Div. 2) A. Bulbs 水题

    A. Bulbs 题目连接: http://www.codeforces.com/contest/615/problem/A Description Vasya wants to turn on Ch ...

  9. js验证身份证id

    function isCardNo(card) { // 身份证号码为15位或者18位,15位时全为数字,18位前17位为数字,最后一位是校验位,可能为数字或字符X var reg = /(^\d{1 ...

  10. [CSS] Introduction to CSS Columns

    Learn how to use CSS columns to quickly lay out fluid columns that are responsive, degrade gracefull ...