摘要:
非常好的一张图 阅读全文
摘要:
同事拷贝一份工程给我,在我这里用AS编译的时候出现这个错误。按照网上很多的方法都不行,后来终于可以。 在AS中打开FILE->Setting->gradle->,在右边service directory path中打开自己的gradle配置文件目录。用记事本打开gradle.properties。发 阅读全文
摘要:
OC运行机制是指,可以运行的时候动态调用函数。因为C语言必须在编译的时候就决定调用哪个函数。 我们平时写的OC代码,它在运行的时候也是转换成了runtime的方式运行的。任何方法调用本质:就是发送一个消息。(用runtime发送消息,OC底层通过runtime实现)每一个OC的方法,底层必然有一个与 阅读全文
摘要:
接着看NSOperation、NSOperationQueue线程间的通信: 应用场景:比如我们经常把一些耗时的操作比如下载图片放在子线程,那么当这个完成之后,我们就需要回到主线程,这个时候就需要用到线程间的通信。 来看下代码: 来看打印: 可以看到,在子线程进行异步操作后,回到了主线程。 再来看下 阅读全文
摘要:
1.什么是NSOperation,NSOperationQueue? NSOperation是一个抽象的基类,表示一个独立的计算单元,可以为子类提供有用且线程安全的建立状态,优先级,依赖和取消等操作。系统已经给我们封装了NSBlckOperation和NSInvocationOperation两个实 阅读全文
摘要:
GCD是基于C的API,它是libdispatch的的市场名称。而libdispatch作为Apple公司的一个库,为并发代码在多核硬件(跑IOS或者OS X)上执行提供有力支持。 那么我们为什么要用GCD技术呢? 1.GCD能够推迟昂贵的计算任务,并在后台运行它们来改善你的应用的性能。 2.GCD 阅读全文
摘要:
多线程技术是有多套解决方案的,那么我们该如何选择呢? 1.一套通用的多线程API 2.适用于UNIX,linux,windows等 3.跨平台,可移植 4.使用难度较高 1.更加面向对象 2.简单易用,可直接操作线程对象 1.用来替代NSThread等线程技术 2.充分利用设备的多核 1.基于GCD 阅读全文
摘要:
1.概念: 多线程(multithreading)到底是什么呢,它是指在软件或者硬件上实现多个线程并发执行的技术。具有多线程能力的计算机因有硬件的支持,而能够在同一时间执行多个线程,进而提升整体处理性能。在一个程序中,这些独立运行的程序片段,叫做线程(thread)。利用它编程的概念就叫做多线程处理 阅读全文
摘要:
一般是因为导入新项目的时候报错的。原因是引入的依赖库的问题。重新执行pod install应该可以解决。不过,有时候如果重新执行pod install无法执行,可以采用以下方法: 在终端中cd到项目所在目录,然后执行以下命令: 阅读全文
摘要:
虽然开发IOS好多年了。但是这几个关键词总是深深困扰着我。加上IOS开发从mRC到ARC的过渡,这些概念更为困扰我了。 先说weak与assign.weak只能修饰对象,不能修饰基本数据类型。而assign既可以修饰基本数据类型,也可以修饰对象。但一般用于修饰基本数据类型。因为当你用assgin修饰 阅读全文