小编Cor*_*ese的帖子

如何在Android中从内存中释放(强制,如果需要)9-patch(NinePatchDrawable)?

你如何强制NinePatchDrawable释放它从'res'解析出来的BitMap字节?


作为Android开发人员,我面临着控制游戏内存利用率的压力.

我通过在不再使用资源后尽快释放资源来控制内存利用率.为此,我保留了所有已加载资源的列表,并在完成后立即从内存中清除/释放它们.

我的应用程序使用了许多不同类型的图形资源

  • 的BitMap
  • BitMapDrawable
  • 可绘制
  • NinePatchDrawable

我现在如何发布这些对象?

  • BitMap:我使用"recycle()"方法
  • BitMapDrawable:我使用"getBitMap().recycle()"方法
  • Drawable:我将它们设置为null(不工作)
  • NinePatchDrawable:我将它们设置为null(不工作)

你有什么尝试?

  • 你不能"getBitmap()"一个NinePatchDrawable
  • 你不能将NinePatchDrawable转换为BitMapDrawable(即使它们都是基于Bitmap的Drawables)
  • 似乎有一种方法可以自己解析PNG,自己将字节输入NinePathDrawable - 这可能会让我自己能够"回收()"自己的底层BitMap,但这似乎是我重新发明了轮(http://code.google.com/p/android/issues/detail?id=13542)

我目前的规则:

  • 切勿在XML中使用@ drawable /
  • 从来没有android:XML背景
  • 从来没有android:src在XML中

android

12
推荐指数
1
解决办法
1678
查看次数

是否可以在 Visual Studio 2012 中配置性能会话文件 (VSP) 的位置?

在某些情况下,Visual Studio 2012 的探查器生成的文件非常大。这些文件的扩展名为“.vsp”

这些文件是在我使用 Visual Studio 2012 Professional 中“分析”菜单下的“启动性能向导”启动探查器后生成的。Visual Studio 正在与解决方案 (.sln) 文件位于同一目录中创建用于分析的 VSP 文件。

我的项目存储在一个较小(仅 100GB)的 SSD 磁盘上,Visual Studio 很快就会填满它们。

我有一个更大的 (2TB) 旋转磁盘,我希望 Visual Studio 将其用于分析器。

无法将整个解决方案移动到更大、更慢的数据驱动器...是否可以在 Visual Studio 2012 中配置性能会话文件 (VSP) 的位置?

我找到了在生成 VSP 文件后设置路径的方法,但似乎只会影响筛选报告的位置。

在我找到一种在生成 VSP 文件之前配置存储位置的方法之前,我将限制对 20GB 以下的分析会话(VS 默认的驱动器上的可用空间)。使用检测工具,20GB 只是一个大量使用该应用程序几分钟。

c++ performance visual-studio visual-c++ visual-studio-2012

6
推荐指数
1
解决办法
1161
查看次数