Unity关于Addressables.Release释放资源内存问题

news2024/10/11 0:26:56

在这里插入图片描述

前言

最近在编写基于Addressables的资源管理器,对于资源释放模块配合MemoryProfiler进行了测试,下面总结下测试Addressables.Release的结论。

总结

使用Addressables.Release释放资源时,通过MemoryProfiler检查内存信息发现加载的内容还在内存里面,经过一系列测试加上阅读文档和搜索资料后得出以下结论。

1.资源引用计数未清零。
每次通过Addressables加载资源会增加该资源引用计数,使用Addressables.Release可以减少计数,直到计数清零才会释放该资源。
2.Addressables.Release是异步操作。
因为我写的资源管理器是对加载资源进行缓存的,不会重复加载,但是调用Release内存中依然保留了该资源。原因是因为Addressables.Release是一个异步操作,即使释放了也不会马上清除内存,这时如果我们调用Resources.UnloadUnusedAssets()则会发现该资源的内存被清除。Resources.UnloadUnusedAssets()是个缓慢的操作,要注意使用时机。
那么如果我们不主动回收的话什么时候自动回收呢?以下列出会自动回收已释放资源内存的时机。
内存压力:当系统内存不足时,Unity 会尝试回收未使用的资源。
场景切换:加载新场景时,Unity 会清理上一个场景中未使用的资源。
低频率的自动回收:Unity 会定期检查并回收未使用的资源,但这个过程不是实时的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1862741.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[leetcode]unique-paths 不同路径

. - 力扣&#xff08;LeetCode&#xff09; class Solution { public:int uniquePaths(int m, int n) {vector<vector<int>> f(m, vector<int>(n));for (int i 0; i < m; i) {f[i][0] 1;}for (int j 0; j < n; j) {f[0][j] 1;}for (int i 1; i &l…

Ubuntu22 更新内核后终端输入卡顿,最简单的解决方案

在系统升级后相信很多人都遇到了这个问题&#xff0c;系统终端输入卡顿&#xff0c;但是ssh远程进来不卡&#xff0c;使用第三方终端也不卡,…&#xff0c;今天终于忍不了&#xff0c;解决了 现象&#xff1a; 更新Nvidia驱动后,内核进行了自动编译升级。 之后的一段时间使用…

grpc学习golang版( 二、入门示例)

系列文章目录 第一章 grpc基本概念与安装 第二章 grpc入门示例 文章目录 一、环境二、编写protobuf文件三、编写server服务端四、编写服务端五、测试 一、环境 确保环境已经配置完成&#xff0c;效果如下。不同环境可能导致后续生成的效果不一。 go version protoc --version…

后端返回base64文件流下载

后端返回base64文件流: 前端处理&#xff1a; downloadTemplate () {this.$API.downloadTemplate().then(({ data }) > {const binaryString atob(data) // 解码base64字符串const byteArray new Uint8Array(binaryString.length) // 创建一个Uint8Arrayfor (let i 0; i…

AI时代下:面对高要求低薪酬,我们如何破局?

在人工智能&#xff08;AI&#xff09;技术日新月异的今天&#xff0c;职场生态正经历着颠覆性的变革。AI技术的广泛应用极大地提高了工作效率&#xff0c;为企业带来了前所未有的发展契机&#xff0c;然而&#xff0c;这也给我们这些职场人带来了前所未有的挑战。在这些挑战中…

# Kafka_深入探秘者(6):kafka 物理存储

Kafka_深入探秘者&#xff08;6&#xff09;&#xff1a;kafka 物理存储 一、kafka 存储结构 1、kafka 存储结构概述图 2、kafka 存储结构概述 每一个 partion (文件夹)相当于一个巨型文件被平均分配,到多个大小相等 segment(段) 数据文件里。但每一个段 segment file 消息数…

CV每日论文--2024.6.24

1、Whiteboard-of-Thought: Thinking Step-by-Step Across Modalities 中文标题&#xff1a;思维白板&#xff1a;跨模式逐步思考 简介&#xff1a;这段话描述了一种利用思维白板提示来增强大型语言模型在视觉推理任务中的性能的方法。 人类在解决需要视觉思考的问题时,通常会…

DarkGPT:基于GPT-4-200k设计的人工智能OSINT助手

关于DarkGPT DarkGPT是一款功能强大的人工智能安全助手&#xff0c;该工具基于GPT-4-200k设计并实现其功能&#xff0c;可以帮助广大研究人员针对泄露数据库进行安全分析和数据查询相关的OSINT操作。 工具要求 openai1.13.3 requests python-dotenv pydantic1.10.12 工具安装 …

嵌入式通信协议----Zigbee

一、简介 1.概念 Zigbee 是一种广泛用于连接物联网&#xff08;IoT&#xff09;设备的无线通信协议。它基于 IEEE 802.15.4 标准&#xff0c;使用低功耗数字无线电来创建个人区域网络&#xff08;PAN&#xff09;。Zigbee 网络的特点是数据速率低、功耗低、覆盖范围短&#xf…

Mybatis-plus学习|性能分析插件、条件构造器、代码自动生成器

性能分析插件 我们在平时的开发中&#xff0c;会遇到一些慢sql。测试!druid…. MP也提供性能分析插件&#xff0c;如果超过这个时间就停止运行! 1、导入插件 该插件只允许在开发和测试环境中使用&#xff0c;故先设置开发环境为开发模式 在MP配置类中注册这个插件&#xff0…

微软专家分享 | AIGC开发者沙龙上海站来啦!

为了向技术开发者、业务人员、高校学生、以及个体创业人员等AI技术关注者们提供更深入的行业洞察、技术交流平台和创新思维的启发&#xff0c;AIGC开放社区联合微软Reactor特别组织了一系列城市巡回沙龙分享活动。在上海站中&#xff0c;我们有幸邀请到多位微软专家进行深入的主…

车辆数据的提取、定位和融合 精确车辆定位(其三.一 共十二篇)随机复合

第一篇&#xff1a; System Introduction 第二篇&#xff1a;State of the Art 第三篇&#xff1a;localization 第四篇&#xff1a;Submapping and temporal weighting 第五篇&#xff1a;Mapping of Point-shaped landmark data 第六篇&#xff1a;Clustering of landma…

A股周一走势历史罕见,你知道是为什么吗?

今天的A股&#xff0c;让人历史罕见&#xff0c;你知道是为什么吗&#xff1f;盘面出现2个重要信号&#xff0c;一起来看看&#xff1a; 1、今天大盘低开低走&#xff0c;跌懵了&#xff0c;两市板块全部在等待翻红&#xff0c;这让人历史罕见。 2、盘面出现2个重要信号&#x…

virutalBox安装debian并配置docker环境

下载镜像 https://gemmei.ftp.acc.umu.se/debian-cd/current/amd64/iso-cd/debian-12.5.0-amd64-netinst.iso 虚拟机安装 如何在Virtual Box 上安装Debian系统_virtual box debian iso netinst-CSDN博客 启动命令行模式 如何设置Debian图形启动或命令行界面启动&#xff1…

实验室信息化管理系统LIMS直击实验室管理痛点,提升效率与规范

实验室信息化管理系统LIMS直击实验室管理痛点&#xff0c;提升效率与规范 在实验室管理的实践中&#xff0c;您是否也面临过以下挑战&#xff1a;如何高效协调和管理多个检测项目&#xff1f;如何让管理经验与检测数据有效积累&#xff1f;如何应对项目监控与管理的复杂性&…

C语言数据结构-分析期末选择题考点(一)

昔我往矣&#xff0c;杨柳依依 今我来思&#xff0c;雨雪霏霏 契子✨ 有道是&#xff1a;得选择题者得天下。临近考试&#xff0c;便总结一下数据结构选择题的常考题型吧&#xff0c;以及预测一下考点&#xff0c;一来是为了备考&#xff0c;二来可以水文。祝各位老铁 “挂柯南…

数据结构-线性表的链式表示

目录 前言一、线性表的链式表示和实现1.1 线性表的表示1.2 基本操作的实现1.3 线性表的链式表示的优缺点 总结 前言 本篇文章主要介绍线性表的链式表示 一、线性表的链式表示和实现 1.1 线性表的表示 线性表的链式表示又称为链式存储结构或链式映像 链式存储定义&#xff1…

1.2 DataX 数据同步工具详细教程

DataX 是阿里巴巴开源的一款高效的数据同步工具&#xff0c;旨在实现多种异构数据源之间的高效数据同步。以下是对 DataX 的详细介绍&#xff1a; 架构 DataX 的架构主要包括以下几个核心组件&#xff1a; DataX Core&#xff1a;负责任务调度、插件加载、日志管理等核心功能…

达梦数据库(DM8)替换授权dm.key遇到的错误, lic info is different between dm.key and sysinfo.

1、报错贴图 2、报错日志提示 version info: security lic info is different between dm.key and sysinfo. 原因说明&#xff1a;dm.key授权与服务器的硬件环境不匹配引起的报错&#xff0c;如&#xff1a;cpu、操作系统版本有关。

C++——布隆过滤器

目录 布隆过滤器的提出 布隆过滤器的概念 布隆过滤器的基本原理和特点 布隆过滤器的实现 布隆过滤器的插入 布隆过滤器的查找 布隆过滤器的删除 布隆过滤器的优点 布隆过滤器的缺陷 布隆过滤器使用场景 布隆过滤器的提出 在注册账号设置昵称的时候&#xff0c;为了保证…