"原子操作(atomic operation)是不需要synchronized",这是Java多线程编程的老生常谈了。 所谓原子操作是指不会被线程调度机制打断的操作;这种操作一旦开始,就一直运行到结束,中间不会有任何 context switch (cpu上下文切换)。 定义:一个操作是原子...
分类:
其他好文 时间:
2016-01-13 19:18:46
阅读次数:
120
[转]http://www.parallellabs.com/2010/04/15/atomic-operation-in-multithreaded-application/多线程程序中操作的原子性0. 背景原子操作就 是不可再分的操作。在多线程程序中原子操作是一个非常重要的概念,它常常用来实现一...
分类:
编程语言 时间:
2016-01-03 18:10:27
阅读次数:
227
本文转载至:http://lists.metaprl.org/pipermail/cs134-labs/2002-October/000025.htmlThe short (or kinda long) answer is this:GFP_ATOMIC means roughly "make th...
分类:
其他好文 时间:
2016-01-02 12:12:09
阅读次数:
783
@property与@synthesize是成对出现的,可以自动生成某个类成员变量的存取方法。在Xcode4.5以及以后的版本,@synthesize可以省略。1.atomic与nonatomicatomic:默认是有该属性的,这个属性是为了保证程序在多线程情况,编译器会自动生成一些互斥加锁代码,避...
分类:
其他好文 时间:
2015-12-28 18:33:25
阅读次数:
130
声明式属性的使用:声明式属性叫编译期语法@property(retain,nonatomic)Some *s;@property(参数一,参数二)Some *s;参数1:retain:修饰引用(对象)数据类型 assgin:修饰基本数据类型(默认) copy:一些对象需要复制才能使用NSString...
分类:
其他好文 时间:
2015-12-22 16:08:26
阅读次数:
94
property 关键字nonatomic 非原子操作,没有加锁解锁机制,线程不安全,速度快atomic 原子操作,有加锁解锁机制线程,安全,效率低内存strong---声明对一个不是自己创建的对象的拥有权,这个对象的retainCount +1retain----同strongweak-----不...
分类:
其他好文 时间:
2015-12-18 16:26:55
阅读次数:
139
atomic : 变量默认是有该有属性的,这个属性是为了保证在多线程的情况下,编译器会自动生成一些互斥加锁的代码,避免该变量的读写不同步的问题。 nonatomic : 如果该对象无需考虑多线程的情况,这个属性会让编译器少生成一些互斥代码,可以提高效率。atomic 的意思是setter/gett....
分类:
移动开发 时间:
2015-12-06 17:33:14
阅读次数:
174
Atomic是在浏览器中运行的用户界面设计工具。不必写任何代码,应用程序设计人员就能够用它来展示在执行一些命令时应用程序的界面应该是怎样的,是如何动作的。当前,Atomic可以运行在Windows和Mac OS上的Chrome中。有计划在将来使它运行在其他浏览器中。而且,据Atomic的联合创始人和...
分类:
移动开发 时间:
2015-12-06 17:33:04
阅读次数:
149
第二章:线程安全性2.1什么是线程安全性可以被多个线程调用,并且在线程之间不会出现错误的交互方法内的局部变量不需要保护,因为它存储在栈中,是每个线程独有的2.2原子性一个共享变量可以定义为原子变量:atomic多个共享变量时,之间可能存在某种依赖关系,分别定义为原子变..
分类:
编程语言 时间:
2015-12-06 01:57:06
阅读次数:
172
Dispatch Queue Dispatch Queue 对于我们开发者来说应该是非常熟悉了,运用的场景非常之多,但是他的内部是如何实现的呢?用于管理追加的Block的C语言层实现的FIFO队列Atomic函数中实现的用于排他控制的轻量级信号用于管理线程的C语言层实现的一些容器 不难想象,GC.....
分类:
其他好文 时间:
2015-12-02 00:57:56
阅读次数:
716