闲来无事,做了一个简约的Caching查看窗口,可以方便的查看本地缓存的使用情况:

下面的URL和VersionNum用来查看某个特定资源的特定版本是否存在,分别输入所需信息,点击“检测”,即可在下面显示出结果。

代码如下所示:

using UnityEditor;
using UnityEngine;
using System.Collections; public class CachingViewer : EditorWindow
{
static CachingViewer window; [MenuItem("WZQYEditor/CachingViewer")]
static void Execute()
{
if (window == null)
{
window = (CachingViewer)GetWindow(typeof(CachingViewer));
}
window.Show();
} string url = "";
string version = "";
bool exist = false; void OnGUI()
{
// 信息显示区域
GUI.BeginGroup(new Rect(10f, 10f, 280f, 250f), "", "box");
EditorGUILayout.BeginVertical(); GUILayout.Label("是否激活: " + Caching.enabled);
GUILayout.Label("是否准备好: " + Caching.ready);
GUILayout.Label("缓存总容量: " + Caching.maximumAvailableDiskSpace / (1024f * 1024f) + "M");
GUILayout.Label("已使用: " + Caching.spaceOccupied / (1024f * 1024f) + "M");
GUILayout.Label("还剩余: " + Caching.spaceFree / (1024f * 1024f) + "M");
GUILayout.Label("空闲剩余时间: " + (Caching.expirationDelay / 3600f) + "h"); // 特定资源检索
GUILayout.Label("------------------------------------------------");
GUILayout.Label("URL");
url = EditorGUILayout.TextField(url, GUILayout.Width(200), GUILayout.Height(20));
GUILayout.Label("VersionNum");
version = EditorGUILayout.TextField(version, GUILayout.Width(200), GUILayout.Height(20));
if (GUI.Button(new Rect(210f, 150f, 50f, 50f), "检测"))
{
exist = Caching.IsVersionCached(url, System.Convert.ToInt32(version));
}
GUI.Label(new Rect(0, 210, 200, 20), "该资源是否存在: " + exist);
GUI.Label(new Rect(0, 230, 300, 20), "------------------------------------------------"); EditorGUILayout.EndVertical();
GUI.EndGroup(); if (GUI.Button(new Rect(10, 280f, 280f, 50f), "清空缓存"))
{
Caching.CleanCache();
} } }

注意:在下载资源时,如果本地缓存空间不足,Unity会根据LRU(least-recently-used最近最久未使用算法)置换算法自动删除一些旧资源,以腾出一些空间用来放置新资源。

LRU算法的答题思路是:给缓存中的每个资源加一个计数器,每次访问时,将被访问资源计数器设为0,并将其他计数器加1,当需要置换资源时将计数器最大的淘汰出缓存,这种算法效率和命中率还是很高的。

Caching查看窗口的更多相关文章

  1. 【VBA】查看窗口当前状态

    Excle的窗口分为:最大化,最小化,一般 使用VB代码如何查看窗口的状态呢?代码如下所示: Sub 获取窗口状态() Dim State As String State = Application. ...

  2. 【调试】Visual Studio 调试小技巧(2)-从查看窗口得到更多信息(转载)

    在使用Visual Studio开发调试程序时,我们经常需要打开查看窗口(Watch)来分析变量.有时在查看窗口显示的内容不是很直观.为了能从查看窗口的变量中得到更多的信息,我们需要一些小的技巧.下面 ...

  3. Hierarchy Viewr 配合 adb 命令 查看窗口属性

    Hierarchy Viewr 可以看到当前 的 窗口层次如下

  4. Visual Studio 调试小技巧-从查看窗口得到更多信息(转)

    原文地址:http://blog.csdn.net/cadcisdhht/article/details/5651488

  5. phpmyadmin 在服务起上检测到错误,请查看窗口底部

    使用phpmyadmin一直提示这个警告,看着难受: 解决: 修改文件:/etc/phpmyadmin/config.inc.php 在最后添加这一句, $cfg['SendErrorReports' ...

  6. 查看窗口名 调用dll setForegroundWindow

    package main import ( "fmt" "log" "syscall" "unsafe" ) var ( ...

  7. 查看内存的方法。vs-调试-窗口-内存

    1.vs-调试-窗口-内存 2.把指针复制到内存窗口中,就可以查看窗口的内存了.

  8. 窗口、消息查看分析利器Spy++

    Spy++ —— 窗口.消息查看分析利器 Spy++ —— 窗口.消息查看分析利器 2016年07月15日 00:25:22 阅读数:23170 1,简介   Microsoft Spy++是一个非常 ...

  9. [转帖]linux screen 命令详解,xshell关掉窗口或者断开连接,查看断开前执行的命令

    linux screen 命令详解,xshell关掉窗口或者断开连接,查看断开前执行的命令 https://binwaer.com/post/12.html yun install -y screen ...

随机推荐

  1. 使用Excel制作万年历(可打印)

    先来看看A4纸打印效果,其他功能后续继续完善中. 年份数据字典(农历节日) 农历节日表 年度 春节 元宵节 龙抬头 端午节 六月六 七月七 七月十五 仲秋节 除夕 2010年02月14日 2010年0 ...

  2. 关于启明星系统(OA系统,预定系统,请假系统等)安全性的说明

    启明星系统推荐是安装在内网里,因此,系统采用了较为简单的身份验证. 事实上,在访问页面时,系统会判断当前cookie的uid是否大于0,如果是,则表示用户已经登录,否则表示未登录. public st ...

  3. C++与C#的时间转换

    1.C++中的时间:(1) time_t其实是一个64位的long int类型(2) time函数:函数简介: 函数名:  time     头文件:  time.h     函数原型:time_t ...

  4. 初识React,Virutal DOM, State以及生命周期

    这是React分类下的第一篇文章,是在了解了一些基本面后,看Tyler文章,边看边理解边写的. React可以看做是MVC中的V,关注的是视图层.React的组件就像Angular的Directive ...

  5. CoreOS实践(1)—CoreOS初体验

    CoreOS主要包含以下一些东西: (1)最小的OS:kernel+systemd (2)使用Docker运行应用 (3)使用fleet管理集群 (4)使用etcd实现服务发现:一个分布式的K/V存储 ...

  6. Python中的字典排序

    我想将 b = {'a':234,'b':1,'c':2,'e':2387} 分别按照key和value进行排序,该怎样办呢? Python中比较常用的排序有两个函数, 一.定义 (1)一个是List ...

  7. H-Basis/SG/SH GI Relighting

    小试了一把预计算全局光照,作为PRT的上级应用.完全自行实现,使用SG/SH.H-Basis基波对GI光场进行频域压缩,存在3D纹理中,用于2跳间接光照实时显示.其中坑点不少,尤其是在HDR环境下使用 ...

  8. Xcode7 使用NSURLSession发送HTTP请求的问题

    报错信息: Application Transport Security has blocked a cleartext HTTP (http://) resource load since it i ...

  9. 更改chrome底色为护目色

    找到chrome目录:C:\Documents and Settings\用户名\Local Settings\Application Data\Google\Chrome\User Data\Def ...

  10. 安装 LuaSocket

    如果你安装有 Lua 模块的安装和部署工具 -- LuaRocks,那么一条指令就能安装部署好 LuaSocket: luarocks install luasocket