强引用(StrongReference):JVM宁可抛出OOM,也不会让GC回收具有强引用的对象 生命周期:JVM停止的时候才会终止 软引用(SoftReference):只有在内存空间不足时,才会被回收的对象 生命周期:内存不足时终止 弱引用(WeakReference):在GC时,一旦发现了只具 ...
分类:
其他好文 时间:
2019-11-16 10:26:14
阅读次数:
69
强引用 : 只要引用存在,垃圾回收器永远不会回收 Object obj= new Object(); Object 对象对后面 new Object的一个强引用, 只有当obj这个被释放之后,对象才会被释放掉, 这也是我们经常所用到的编码形式. 软引用: 非必须引用,内存溢出之前进行回收,可以通过以 ...
分类:
编程语言 时间:
2019-11-03 18:23:30
阅读次数:
71
首先要对问题的描述有一个大概认知, 什么是性能? 什么影响性能? 如何最大化的提高性能? 影响WPF应用程序性能的方面 1.硬件 Dx版本(WPF 基于DX渲染,也可以CPU)RenderCapability.Tier属性允许你在应用程序运行时检索呈现层 2.使用高效的panel ,Grid sta ...
动态内存与智能指针 智能指针分为shared_ptr、unique_ptr、weak_ptr,他们负责自动释放所指向的对象,shared_ptr允许多个指针指向同一个对象,unique_ptr独占所指向的对象,weak_ptr是一种弱引用,指向shared_ptr所管理的对象,他们都定义在memor ...
分类:
其他好文 时间:
2019-10-19 19:08:57
阅读次数:
102
整体结构 java提供了4中引用类型,在垃圾回收的时候,都有自己的各自特点。 为什么要区分这么多引用呢,其实这和Java的GC有密切关系。 强引用(默认支持模式) 把一个对象赋给一个引用变量,这个引用变量就是一个强引用。 强引用是我们最常见的普通对象引用,只要还有强引用指向一个对象,就能表明对象还活 ...
分类:
编程语言 时间:
2019-10-19 11:34:44
阅读次数:
104
Java种除了基本数据类型,其它数据类型都是引用的数据类型。而应用数据类型根据生命周期的长短又分为:强引用、弱引用、软引用和需引用(幻象引用),我们平时基本上只用到强引用类型,而其他的引用类型我们也就在面试中,或者平日阅读类库或其他框架源码的时候才能见到。 1.强引用 用到的new了一个对象就是强引 ...
分类:
编程语言 时间:
2019-10-16 11:12:05
阅读次数:
96
在iOS9.0之前,通知中心对观察者对象进行unsafe_unretained 引用,当被引用的对象释放时不会自动置为nil,,也就是成了野指针。 iOS9.0之后通知中心对观察者做了弱引用。 参考:https://blog.csdn.net/sinat_28585351/article/detai ...
分类:
移动开发 时间:
2019-10-12 15:52:46
阅读次数:
230
一. weak_ptr的概况 (一)weak_ptr的创建 1. 直接初始化:weak_ptr<T> wp(sp); //其中sp为shared_ptr类型 2. 赋值: wp1 = sp; //其中sp为shared_ptr类型 wp2 = wp1; //其中wp1为weak_ptr类型 (二)常 ...
分类:
其他好文 时间:
2019-10-05 01:06:44
阅读次数:
136
一次对ThreadLocal的学习引发的思考 ThreadLocal对Entry的引用是弱引用,于是联想到四种引用的生命周期。 1. 强引用,不会进行垃圾回收 2. 软引用,JVM内存不够,进行回收 3. 弱引用,下次GC,直接进行回收 4. 虚引用,不会对GC产生任何影响,结合ReferenceQ ...
分类:
其他好文 时间:
2019-09-30 16:28:19
阅读次数:
120
objc_object: 我们平时所使用的数据结构都是id类型的,对应到runtime中的类型是objc_object,其中包含isa_t、关于isa操作相关的方法、弱引用相关的方法、关联对象相关的方法、内存管理相关的方法 objc_class:我们在OC中使用的Class在runtime中对应ob ...
分类:
其他好文 时间:
2019-09-20 18:53:34
阅读次数:
86