自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 在iOS中有几种方法来解决多线程访问同一个内存地址的互斥同步问题

方法一,@synchronized(id anObject),(最简单的方法)会自动对参数对象加锁,保证临界区内的代码线程安全@synchronized(self)    {           // 这段代码对其他 @synchronized(self) 都是互斥的                  // self 指向同一个对象    }   方

2016-05-30 22:41:10 3722

原创 线程与进程

进程(process)是一块包含了某些资源的内存区域。操作系统利用进程把它的工作划分为一些功能单元。  进程中所包含的一个或多个执行单元称为线程(thread)。进程还拥有一个私有的虚拟地址空间,该空间仅能被它所包含的线程访问。  通常在一个进程中可以包含若干个线程,它们可以利用进程所拥有的资源。  在引入线程的操作系统中,通常都是把进程作为分配资源和调度的基本单位,而把线

2016-05-30 22:11:25 244

转载 iOS关键字strong/weak/assign/retain/nonatomic/atomic

依旧本着尊重原创和劳动者的原则,将地址先贴在前面:http://www.cnblogs.com/nonato/archive/2013/11/28/3447162.html,作者Nonato恭喜勇士G6,拿下雷霆。勇士老板那真是跪拜汤神啊....IOS的对象都继承于NSObject, 该对象有一个方法:retainCount ,内存引用计数。 引用计数在很多技术都用

2016-05-30 00:36:59 281

原创 如何在 block 中修改外部变量

有两种办法,第一种是可以修改 static 全局变量;第二种是可以修改用新关键字 __block 修饰的变量。请看:NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];__block int blockLocal = 100;static int staticLocal = 100;void (^a

2016-05-28 10:27:42 1865

原创 Xcode 7中http通信出现如下错误

Xcode 7中http通信出现如下错误:Application Transport Security has blocked a cleartext HTTP (http://) resource load since it is insecure. Temporary exceptions can be configured via your app's Info.plist file.

2016-05-27 11:40:36 256

原创 dispatch_get_main_queue的异步同步问题

dispatch_sync(dispatch_get_main_queue(), ^(){        NSLog(@"222");    });在ios中是无法使用 dispatch_sync(dispatch_get_main_queue()原因如下:在ios使用 dispatch_sync(dispatch_get_main_queue()^(){block体});

2016-05-27 00:41:55 11001

转载 堆和栈的区别 (转贴)

堆和栈的区别 (转贴) 非本人作也!因非常经典,所以收归旗下,与众人阅之!原作者不祥!堆和栈的区别一、预备知识—程序的内存分配一个由c/C++编译的程序占用的内存分为以下几个部分1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由

2016-05-26 09:22:00 577

转载 多线程编程之block

block 是Apple在gcc 4.2 中扩充的新语法特性,其目的是支持多核并行编程。我么可以将dispatch_queue和block结合起来使用。1.如何编写block。void (^aBlock)(void) = ^(void){ NSLog(@"Hello, World!"); };aBlock();int (^myBlock) (int,int) = ^(int a,i

2016-05-25 00:07:50 311

空空如也

空空如也

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

TA关注的人

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