- 博客(11)
- 收藏
- 关注
原创 CUDA C编程学习笔记
尽管可以使用多核和众核来区分CPU和GPU的架构,但这两种核心是完全不同的。CPU核心比较重,用来处理非常复杂的控制逻辑,以优化串行程序执行。GPU核心较轻,用于优化具有简单控制逻辑的数据并行任务,注重并行程序的吞吐量。。GPU不 是一个独立运行的平台而是CPU的协处理器。因此,GPU必须通过PCIe总线与基于CPU的 主机相连来进行操作,CUDA编程模型假设系统是由一个主机和一个设备组成的,而且各自拥有独立的内 存。核函数是在设备上运行的。为使你拥有充分的控制权并使系统达到最佳性能,CUDA 运行
2022-01-06 16:54:17
1016
原创 iOS学习笔记【十】—— NSNotification
NSNotification用于描述通知的类,一个NSNotification对象就包含了一条通知的信息- (NSString*) name; // 通知的name- (id) object; // 携带的对象- (NSDictionary*) userInfo; // 配置信息NSNotificationCenter是个单例类,负责添加通知add、发送通知post和移除通知removeNSNotificationQueue通知队列,用于异步发送消息,这个异步并不是开启线程,而是把通知存
2021-06-30 09:44:41
399
原创 iOS学习笔记【五】——Runtime
iOS学习笔记【五】——Runtime只做简单笔记???? 详细请戳标题链接????key point:Objective-C 语言 是一门动态语言。在编译阶段并不知道变量的具体数据类型,也不知道所真正调用的哪个函数。把一些决定性的工作从编译阶段、链接阶段推迟到 运行时阶段 的机制,使得 Objective-C 变得更加灵活。主要应用——消息机制、动态方法交换、Category分类、获取类属性/方法等消息机制方法调用 [receiver selector]在『编译阶段』被转换为objc_ms
2021-05-30 09:40:06
196
原创 iOS学习笔记【七】——引用计数管理
iOS学习笔记【七】——计数管理SideTables全局的SideTables——管理引用计数和weak指针是一个全局的Hash表,里面的内容装的都是SideTable结构体。它使用对象的内存地址当它的key进行hash映射使用分离锁来保证整个hash表的安全性和操作效率——每一个小单元格(SideTable)都带有一把锁,降低锁的粒度,并发操作自旋锁没有过多的自旋,临界区代码量较少对于互斥锁,如果资源已经被占用,资源申请者只能进入睡眠状态。但是自旋锁不会引起调用者睡眠,不需要进行上下文切换
2021-03-31 19:22:39
324
原创 iOS学习笔记【八】——KVC & KVO
https://www.jianshu.com/p/829864680648使用了 isa 混写(isa-swizzling)来实现 KVO,把被观察对象的 isa 指针指向这个新创建的子类,还重写了-class 方法并返回原来的类,造成类对象没有改变的“假象”。系统会自动在set方法前后调用以下两个函数+ (BOOL)automaticallyNotifiesObserversForName{ return YES; //默认}- (void)setNow:(NSDate *)aDa
2021-03-31 18:23:15
210
1
原创 iOS学习笔记【六】—— Block
iOS学习笔记【六】—— Block源码解析转换前 OC 代码:int main () { void (^myBlock)(void) = ^{ printf("myBlock\n"); }; myBlock(); return 0;}执行clang -rewrite-objc block.m,将OC转为C++ 源码:/* 包含 Block 实际函数指针的结构体 */struct __block_impl { void *isa;
2021-03-31 09:15:46
132
原创 iOS学习笔记【一】——对象相关
iOS学习笔记OC对象的本质https://www.jianshu.com/p/80d665c25d38struct objc_object {private: isa_t isa; // 成员变量的值...};struct _class_t { struct _class_t *isa; struct _class_t *superclass; void *cache; void *vtable; struct _class_ro_t *r
2020-12-01 16:49:24
181
原创 iOS学习笔记【十一】——UICollectionViewLayout
iOS学习笔记——UICollectionViewLayoutSummaryUITableView 和 UICollectionView 在显示其子视图集的过程中仅扮演容器角色,且对子视图集真正的内容毫不知情。UICollectionView在此之上进行了进一步抽象。它将其子视图的位置,大小和外观的控制权委托给一个单独的布局对象。布局继承自UICollectionViewLayout 抽象基类。iOS6 中以UICollectionViewFlowLayout类的形式提出了一个具体的布局实现。/
2020-08-26 16:21:44
555
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人