自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 收藏
  • 关注

原创 背记知识点

OC中,与alloc语义相反的方法是dealloc还是release?与retain语义相反的方法是dealloc还是release?为什么?需要与alloc配对使用的方法是dealloc还是release,为什么?以下是针对MRC(手动内存释放)模式: 与alloc语义相反的方法是dealloc,与retain语义相反的方法是release。 alloc是为对象在内存中开辟空间,而deallo

2017-07-12 17:31:42 458

原创 id和instancetype

http://blog.csdn.net/lonelyroamer/article/details/7711895

2017-05-25 16:10:57 298

原创 ios 编译期和运行期

http://blog.csdn.net/Hello_Hwc/article/details/53557308http://blog.sina.com.cn/s/blog_12f70aa790102vc2i.html

2017-05-22 15:04:56 1797

原创 UIScrollView实现图片轮播器及其无限循环效果

http://blog.csdn.net/xyt8023y/article/details/50116571http://blog.csdn.net/azhang_coder/article/details/53243536http://www.cnblogs.com/wendingding/p/3763527.htmlhttp://blog.csdn.net/qq_27633421/article

2017-05-22 14:56:07 410

原创 NSTimer与NSRunLoop

为什么要在非主线程创建NSTimer将 timer 添加到主线程的Runloop里面本身会增加线程负荷 如果主线程因为某些原因阻塞卡顿了,timer 定时任务触发的时间精度肯定也会受到影响 有些定时任务不是UI相关的,本来就没必要在主线程执行,给主线程增加不必要的负担。当然也可以在定时任务执行时,手动将任务指派到非主线程上,但这也是有额外开销的。NSTimer的重要特性NSTimer上的定时任务

2017-05-22 10:44:52 375

原创 iOS 响应者链,事件的传递

对于UIView 的两个方法的讲解: - (UIView )hitTest:(CGPoint)point withEvent:(UIEvent )event - (BOOL)pointInside:(CGPoint)point withEvent:(UIEvent *)event(UIView )hitTest:(CGPoint)point withEvent:(UIEvent )event{

2017-05-18 17:21:33 249

原创 NSString 的时候用copy和strong的区别

用copy是为了防止mutable string被无意中修改, NSMutableString是NSString的子类, 因此NSString指针可以持有NSMutableString对象.假如有一个NSMutableString,现在用他给一个retain修饰 NSString赋值,那么只是将NSString指向了NSMutableString所指向的位置,并对NSMUtbaleString计数器

2017-05-16 13:38:49 522

原创 设计模式

1、代理模式delegate的作用:当一个类的某些功能需要被别人来实现,但是既不明确是些什么功能,又不明确谁来实现这些功能的时候,委托模式就可以派上用场。说到底一切都是为了使类之间的耦合性更松散。好的代码应该对扩展开放,对修改关闭。自定义一个delegate:@protocol DelegateTestDelegate《Object》@optional则是可做或不做 @required 就是必须去

2017-05-15 09:08:04 244

原创 ios 属性

使用@dynamic关键字是告诉编译器由我们自己来实现访问方法。如果使用的是@synthesize,那么这个工作编译器就会帮你实现了。nonatomic:非原子性访问,对属性赋值的时候不加锁,多线程并发访问会提高性能。如果不加此属性,则默认是两个访问方法都为原子型事务访问。设置成员变量的@property属性时,默认为atomic,提供多线程安全。 在多线程环境下,原子操作是必要的,否则有可能引起错

2017-04-19 11:26:50 228

转载 ios 属性

使用@dynamic关键字是告诉编译器由我们自己来实现访问方法。如果使用的是@synthesize,那么这个工作编译器就会帮你实现了。nonatomic:非原子性访问,对属性赋值的时候不加锁,多线程并发访问会提高性能。如果不加此属性,则默认是两个访问方法都为原子型事务访问。设置成员变量的@property属性时,默认为atomic,提供多线程安全。 在多线程环境下,原子操作是必要的,否则有可能引起错

2017-04-16 16:10:18 229

原创 atomic 与 nonatomic

在多进程(线程)访问共享资源时,能够确保所有其他的进程(线程)都不在同一时间内访问相同的资源。原子操作(atomic operation)是不需要synchronized,这是Java多线程编程的老生常谈了。所谓原子操作是指不会被线程调度机制打断的操作;这种操作一旦开始,就一直运行到结束,中间不会有任何 context switch (切换到另一个线程)。原子性: 1. 原子性内部也有一把,自旋

2017-03-22 10:50:50 280

原创 ios中的锁

1111

2017-03-21 14:36:37 253

转载 Block

底层的东西: http://www.cocoachina.com/ios/20150106/10850.htmlhttp://www.cocoachina.com/ios/20150109/10891.html自己参考: http://blog.csdn.net/wenxiangjiang/article/details/51387629 https://my.oschina.net/leej

2017-03-21 11:39:54 185

转载 iOS 学习资料整理

http://www.cocoachina.com/ios/20150111/10894.html

2017-03-20 14:55:31 178

原创 runtime

说说什么是runtime:1>OC 是一个全动态语言,OC 的一切都是基于 Runtime 实现的 平时编写的OC代码, 在程序运行过程中, 其实最终都是转成了runtime的C语言代码, runtime算是OC的幕后工作者 比如:OC : [[Person alloc] init] runtime : objc_msgSend(objc_msgSend(“Person” , “alloc

2017-03-10 16:11:49 208

原创 GCD

http://www.cocoachina.com/ios/20161031/17887.htmlhttp://ios.jobbole.com/82622/http://www.jianshu.com/p/bc45569adee2http://www.cnblogs.com/ioshe/p/5937933.htmlhttp://www.jianshu.com/p/ae786a4cf3b1http:/

2017-03-08 17:36:49 325

原创 NSOperation

一、NSOperation简介1.简单说明NSOperation的作⽤:配合使用NSOperation和NSOperationQueue也能实现多线程编程NSOperation和NSOperationQueue实现多线程的具体步骤:(1)先将需要执行的操作封装到一个NSOperation对象中(2)然后将NSOperation对象添加到NSOperationQueue中(3)系统会⾃动将NSOper

2017-03-01 14:38:17 236

原创 NSOperation

一、NSOperation简介1.简单说明NSOperation的作⽤:配合使用NSOperation和NSOperationQueue也能实现多线程编程NSOperation和NSOperationQueue实现多线程的具体步骤:(1)先将需要执行的操作封装到一个NSOperation对象中(2)然后将NSOperation对象添加到NSOperationQueue中(3)系统会⾃动将NSOper

2017-03-01 14:37:03 173

原创 线程Thread

同步:一个人多个任务按顺序执行 异步:多个人同时执行多个任务 进程:系统中正在运行的应用程序;每个进程之间是独立的,每个进程都运行在其专用的且受保护的内存空间中, 线程:一个进程可以有多个线程组成,线程是进程的基本单元,一个进程的所有任务都在线程中执行(一个进程至少有一个线程)多线程: 1.单核CPU同一时间只能处理一个线程; 2.CPU快速的在多个线程之间切换,造成同时执行的假象,每个线

2017-02-20 23:11:51 283

原创 进程和线程的区别

从一定意义上讲,进程就是一个应用程序在处理机上的一次执行过程,它是一个动态的概念,而线程是进程中的一部分,进程包含多个线程在运行。进程是一个具有独立功能的程序关于某个数据集合的一次运行活动。它可以申请和拥有系统资源,是一个动态的概念,是一个活动的实体。通常在一个进程中可以包含若干个线程,它们可以利用进程所拥有的资源。在引入线程的操作系统中,通常都是把进程作为分配资源的基本单位,而把线程作为独立运行和

2017-02-20 14:23:52 299

原创 同步、异步

在计算机领域,同步就是指一个进程在执行某个请求的时候,若该请求需要一段时间才能返回信息,那么这个进程将会一直等待下去,直到收到返回信息才继续执行下去;异步是指进程不需要一直等下去,而是继续执行下面的操作,不管其他进程的状态。当有消息返回时系统会通知进程进行处理,这样可以提高执行的效率。而我们平时经常讨论的同步问题多发生在多线程环境中的数据共享问题。即当多个线程需要访问同一个资源时,它们需要以某种顺序

2017-02-16 16:40:39 266

原创 并发、并行、串行

并发(Concurrency):以可独立执行的进程集合的方式编程(进程是出了名的难定义,这里是通常意义上的进程,不是Linux进程)并行(Parallelism):以可同时执行的(可能相关的)计算指令方式编程。两者的区别:并发是同时处理(dealing)很多的事情,并行是同时做(doing)很多的事情。不同,但也相关。一个是关于代码结构,一个是关于代码执行。并发为可能的(不是必须的)并行问题提供了一

2017-02-16 15:13:19 13374 1

原创 我所了解的第三方库

猿题库的YTKNetworkhttps://github.com/yuantiku/YTKNetwork/blob/master/Docs/README_cn.md

2017-02-15 10:40:27 333

转载 MVC、MVP、MVVM

iOS MVC 示意图MVC 的几个明显的特征和体现:1、View 上面显示什么东西,取决于 Model。Model和View永远不能相互通信,只能通过Controller传递。2、Model通过Notification和KVO机制与Controller间接通信。只要 Model 数据改了,View 的显示状态会跟着更改。3、Controller可以直接与View对话(通过outlet,直接操作Vi

2017-02-14 13:52:17 279

转载 内联函数

UIKIT_STATIC_INLINE UIEdgeInsets UIEdgeInsetsMake(CGFloat top, CGFloat left, CGFloat bottom, CGFloat right) { UIEdgeInsets insets = {top, left, bottom, right}; return insets; }UIKIT_STATIC_INLINE UIO

2016-11-21 16:58:03 393

转载 欢迎使用CSDN-markdown编辑器

欢迎使用Markdown编辑器写博客本Markdown编辑器使用[StackEdit][6]修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用

2016-11-21 16:55:52 212

原创 图形

1、        //n表示中间一行最多的数   //h表示多少行,h必须是奇数    //i表示第几行   //j表示每行输出的空格数   //k表示每行输出的*号数   //s表示上半部分的行数        int i,j,k,n = 13,h = 11,s = 5,m = 0;        for(i=1;i

2016-08-23 16:38:20 407

原创 C语言程序设计 基础知识点

1、&是取地址符号,&x表示的是x在内存中的地址,表示把输入的数据放到x所在的内存单元中去。2、C程序源程序扩展名为.c。目标程序扩展名为.obj。可执行程序的扩展名为.exe。

2016-08-15 10:20:16 8243

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除