当前位置: 首页 > wzjs >正文

网站开发的上市公司有哪些网站名称有哪些

网站开发的上市公司有哪些,网站名称有哪些,百度医生,外国优秀设计网站弱引用(Weak Reference)是一种特殊的引用类型,它允许你引用一个对象,但不会阻止该对象被垃圾回收器(GC)回收。弱引用通常用于需要缓存或跟踪对象,但又不希望因保留引用而导致内存泄漏的场景。弱…

弱引用(Weak Reference)是一种特殊的引用类型,它允许你引用一个对象,但不会阻止该对象被垃圾回收器(GC)回收。弱引用通常用于需要缓存或跟踪对象,但又不希望因保留引用而导致内存泄漏的场景。弱引用对小对象没有意义,因为弱引用有自己的开销,这个开销可能比小对象更大。

核心概念​​

​​与强引用的区别​​
​​强引用​​:普通对象引用(如 var obj = new MyClass())会阻止 GC 回收对象。
​​弱引用​​:不会阻止 GC 回收对象。当对象只有弱引用时,GC 可以随时回收它。
​​用途​​
缓存大型数据(如图片、文件等),当内存不足时自动释放。
避免因长期持有对象引用而导致内存泄漏。
监听事件或观察对象生命周期,但不干预其回收。

使用:

1.基础使用:

代码:

public class WeakReferenceTest : MonoBehaviour
{WeakReference weakRef;// Start is called before the first frame updatevoid Start(){// 创建一个对象var myObject = new TestWeakReferenceObj();// 创建弱引用weakRef = new WeakReference(myObject);// 解除强引用,只保留弱引用myObject = null;// 通过弱引用访问对象if (weakRef.IsAlive){var obj = weakRef.Target as TestWeakReferenceObj;obj.DoSomething();}else{Debug.Log("对象已被回收");}}// Update is called once per framevoid Update(){// 通过弱引用访问对象if (weakRef.IsAlive){var obj = weakRef.Target as TestWeakReferenceObj;obj.DoSomething();}else{Debug.Log("对象已被回收");}}
}class TestWeakReferenceObj { public void DoSomething(){Debug.Log("对象没有被回收");}
}

结果:

2.泛型使用:

代码:

public class WeakReferenceTest : MonoBehaviour
{WeakReference<TestWeakReferenceObj> weakRefGeneric;// Start is called before the first frame updatevoid Start(){weakRefGeneric = new WeakReference<TestWeakReferenceObj>(new TestWeakReferenceObj());if (weakRefGeneric.TryGetTarget(out TestWeakReferenceObj obj)){obj.DoSomething();}else{Debug.Log("对象已被回收");}}// Update is called once per framevoid Update(){if (weakRefGeneric.TryGetTarget(out TestWeakReferenceObj obj)){obj.DoSomething();}else{Debug.Log("对象已被回收");}}
}class TestWeakReferenceObj { public void DoSomething(){Debug.Log("对象没有被回收");}
}

结果:

适用场景:

​缓存​​:缓存大型对象,但允许 GC 在需要时回收它们。
事件监听​​:避免事件订阅导致的内存泄漏。
​​对象生命周期跟踪​​:观察对象是否存活,但不阻止其回收。


性能​​:频繁检查弱引用是否存在可能影响性能。
​​不确定性​​:对象可能在任何时候被回收,需始终检查 IsAlive 或 TryGetTarget。
​​短期弱引用(Short Weak Reference)​​:默认行为,GC 回收后弱引用自动失效。
​​长期弱引用(Long Weak Reference)​​:通过 WeakReference 构造函数指定 trackResurrection 为 true,可跟踪对象在终结后的状态(但极少使用)。

总结:

弱引用是 C# 中管理内存的一种高级机制,适用于需要灵活控制对象生命周期的场景。正确使用它可以优化内存使用,但需谨慎处理对象可能随时被回收的情况。

参考书籍或链接:

《C#高级编程》第2版


文章转载自:

http://UVFSjnVx.wsrcy.cn
http://ncAi7DcL.wsrcy.cn
http://TUOwtuEb.wsrcy.cn
http://5zH31vSR.wsrcy.cn
http://Hp1j7M73.wsrcy.cn
http://d9Kyzrzh.wsrcy.cn
http://qTB5dtTs.wsrcy.cn
http://T7UXEV3a.wsrcy.cn
http://dbasRoBt.wsrcy.cn
http://pSgU6rVV.wsrcy.cn
http://mXzcviSo.wsrcy.cn
http://pqVBkRKv.wsrcy.cn
http://DL9ysLFH.wsrcy.cn
http://Wxdg6XJU.wsrcy.cn
http://DTiNSakd.wsrcy.cn
http://HKUuYAaq.wsrcy.cn
http://vURrLtz6.wsrcy.cn
http://SBiGQVpD.wsrcy.cn
http://Xm7ihDJY.wsrcy.cn
http://NOWx0uHZ.wsrcy.cn
http://VvVud2zO.wsrcy.cn
http://hlbkj1Um.wsrcy.cn
http://QQCSWjGU.wsrcy.cn
http://Ppw6thre.wsrcy.cn
http://UllgPqx7.wsrcy.cn
http://6gEiD4as.wsrcy.cn
http://G4UXnEIi.wsrcy.cn
http://G88bbc8a.wsrcy.cn
http://uSUBTPm2.wsrcy.cn
http://9FgWM4bo.wsrcy.cn
http://www.dtcms.com/wzjs/775732.html

相关文章:

  • 北京做网站公司浮动定位网页设计作业
  • 广州第一网站自在威海智慧旅游平台app
  • 做网站在哪里找素材做自媒体怎么在其它网站搬运内容
  • 杭州 高端网站建设重庆工程招标网站有哪些
  • wex5做视频网站大学做机器人比赛的网站论坛
  • 台州市住房和城乡建设规划局网站湖北专业网站建设公司
  • 信息网站模板p2p理财网站开发
  • 柳州建设局网站产品推广平台
  • 可以做试卷的网站营销策划方案包括哪些内容
  • 网站群 建设 方案佛山规划建设局网站
  • 对电子商务网站设计的理解正规免费发布信息网站
  • 建设电商网站思想移动网站建设指南
  • 广东网站制作公司排名wordpress 置顶 函数
  • 网站建设的单可以刷吗广州建站外贸网站
  • 网站模板及源码wordpress福利
  • 长沙旅游网站建设Wordpress前端用户头像
  • 如何做网站动态图标安卓优化神器
  • 视频点播网站开发wordpress电影站
  • 资讯主题 wordpress哈尔滨seo优化代理
  • 桐乡市住房建设局网站公示网站pv uv统计
  • 网站建设人才调研可以做的电影网站
  • 专教做美食的网站购物网站建设价格
  • 山西太原网站建设公司男女直接做的视频视频网站
  • 台州市建设局网站广东建设集团
  • 网站的ftp账号和密码是什么建站系统cms
  • 做网站电脑配置新站如何让百度快速收录
  • 怎么做免费网站被收录手机网站开发利用流程
  • 北京高端网站制作网站后台关键词怎么设置
  • 做网站品牌国外网站访问速度慢
  • 澄海玩具网站建设公司东莞市生态环境局