android - Android Studio 调试器中的 for 循环非常慢,没有它就快
问题描述
我正在 Android Studio 中初始化一个 30 MB 的数组。
byte[] myarray = new byte[30 * 1024 * 1024];
for (int i = 0; i < myarray.length; i++) {
myarray[i] = 0;
}
围绕这一点,我使用 SystemClock 进行了时间测量,计算循环需要多少毫秒。
如果应用程序从 Android Studio 启动,则需要 2.5 分钟。当然不涉及断点。
如果应用程序在没有 Android Studio 的情况下直接启动,则为 0.5 秒。
当我在这个数组上调用其他操作(例如 System.arraycopy)时,我看不到如此巨大的差异。我知道调试与否之间存在差异,但这是 300 倍。
这里发生了什么,如何修改它以便有效地调试我的应用程序?
解决方案
推荐阅读
- ios - 我如何找到专辑的 ID 以向 imagur API 发出请求?
- c++ - 在没有 Python 的情况下在 Windows 上为 C++/OpenCV 使用构建 Caffe
- python - 未找到带有参数 '('', '')' 的 'ptrips' 的反向操作。尝试了 1 种模式:['details/trips/(?P
[0-9]+)/(?P [0-9]+)/$'] - python-3.x - 如何将 config.ini 中定义的变量数量传递给 psycopg2 插入?
- node.js - 如何在 Node 中限制 HTTP 请求的带宽?
- c - 获取城市的平均温度
- ios - 无法在 Android Studio 中为 Flutter 选择 iOS 手机模拟器
- angular - 使用异步管道和主题时的 ObjectUnsunscriberError 实现
- c - 如何在C中的双向链表中搜索名称和删除节点?
- android - 片段中的自定义列表适配器