草庐IT

android - 在 AsyncTask 中的 Honeycomb 上下载大文件(> 100mb)会减慢 UI,可能是因为 GC?

我的一个Activity中有一个名为DownloadFileAsyncTask的私有(private)内部类。我附上了它:privateclassDownloadFileAsyncTaskextendsAsyncTask{privatestaticfinalStringTAG="DownloadFileAsyncTask";@OverrideprotectedvoidonPreExecute(){WifiManagermanager=(WifiManager)getSystemService(Context.WIFI_SERVICE);mWifiLock=manager.createW

android - 有没有办法减慢模拟器上的所有动画?

在iPhone模拟器上,我可以将模拟器设置为使用慢速动画。这让我可以仔细观看动画,并检查视觉问题。有没有办法通过设置或某种操作系统技巧为Android模拟器做同样的事情?显然,我可以增加自定义动画的时间并按照这种方式进行,但这对内置动画(例如Activity转换)没有帮助。 最佳答案 在设备开发人员设置中,您可以减慢窗口动画、过渡动画和动画持续时间。最后一项会减慢基于底层Animator对象的任何东西,根据我的经验,这对动画调试非常有效。前往:设置应用->开发者设置->绘图->Animatordurationscale然后您可以根据

java - 日志记录会减慢生产 Android 应用程序的速度吗?

在将我的Android应用发布到市场之前,我应该注释掉所有日志吗?Log.d(tag,"exampleofalog")如果我将它们留在那里,应用程序运行速度会变慢吗? 最佳答案 Java不支持C#风格的条件编译,因此参数总是被评估。这包括任何字符串连接和您可能正在做的事情。简短的回答:是的。 关于java-日志记录会减慢生产Android应用程序的速度吗?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.co

android - 其他进程调用 GC 会减慢我的游戏速度

我正在为Android>=2.1编写实时街机游戏。在游戏过程中,我不会分配内存,以免引诱GC。因为如果GC调用,它需要处理器70-200毫秒。用户将其视为“哦,不,那个游戏是滞后的......”。我检查了LogCat。有很多GC_FOR_MALLOC或GC_EXPLICIT。但是...不是来self进程的PID!我的游戏不会引起他们。它们是由于其他进程在后台运行引起的。一些墙纸、小部件、radio、电子邮件、天气预报和其他服务......完全看不懂。例如,当墙纸消失时,我想它的onPause()会被调用。因此,它应该停止所有线程并且当然不分配任何内存(或调用System.gc())。也

c++ - 一个单独的循环减慢了一个独立的早期循环?

一个单独的循环如何影响一个独立的早期循环的性能?我的第一个循环读取一些大文本文件并计算行数。在malloc之后,第二个循环填充分配的矩阵。如果第二个循环被注释掉,第一个循环需要1.5秒。然而,用第二个循环编译会减慢第一个循环,现在需要30-40秒!换句话说:第二个循环以某种方式减慢了第一个循环。我曾尝试更改范围、更改编译器、更改编译器标志、更改循环本身、将所有内容放入main()、使用boost::iostream甚至将一个循环放在共享库中,但每次尝试都存在相同的问题!第一个循环很快,直到程序用第二个循环编译。编辑:这是我的问题的完整示例------------>#include#in

c++ - OpenCV 减慢网络摄像头捕获

我在Windows机器和RaspberryPi(ARM、DebianWheezy)上的C++应用程序中使用OpenCV从网络摄像头捕获帧。问题是CPU使用率。我只需要每2秒处理一次帧——所以没有实时实时取景。但是如何实现呢?你会推荐哪一个?抓取每一帧,但只处理一些:这有点帮助。我获得了最新的帧,但此选项对CPU使用率没有显着影响(低于25%)抓取/处理每一帧但sleep:对CPU使用率有很好的影响,但我得到的帧是旧的(5-10秒)在每个循环中创建/销毁VideoCapture:在一些循环之后,应用程序崩溃-即使VideoCapture已正确清理。还有其他想法吗?提前致谢#include

c++ - 减慢线程的最佳方法?使用 Sleep() 可以吗?

我写了一个C++库,它做一些非常繁重的CPU工作(所有这些都是数学和计算),如果留给它自己的设备,很容易消耗100%的所有可用CPU资源(它也是多线程的)机器上的可用逻辑内核数)。因此,我在使用该库的软件应该调用的主计算循环中有一个回调:while(true){//domathherecallback(percent_complete);}在回调中,客户端调用Sleep(x)来减慢线程。最初,客户端代码是一个固定的Sleep(100)调用,但这导致了不可靠的性能,因为有些机器比其他机器更快地完成数学运算,但所有机器上的sleep都是相同的。所以现在客户端检查系统时间,如果超过1秒(这=

c++ - 全局变量减慢代码

我正在写我能写的最糟糕的代码,(基本上是想破坏东西)我注意到这段代码:for(inti=0;i其中N是一个全局变量,运行速度明显较慢:intN=10000;for(inti=0;i全局变量会导致运行速度变慢怎么办? 最佳答案 tl;dr:本地版本将N保存在寄存器中,全局版本则不会。使用const声明常量,无论您如何声明它都会更快。这是我使用的示例代码:#include#includevoidfirst(){intx=1;intN=10000;for(inti=0;i(名为test.cpp)。为了查看生成的汇编代码,我运行了g++-S

c++ - 为什么 Sleep() 会使后续代码减慢 40 毫秒?

我最初是在coderanch.com上询问过这个问题的,所以如果你试图在那里帮助我,谢谢,并且不要觉得有必要重复这项工作。不过,coderanch.com主要是一个Java社区,这似乎(经过一些研究)确实是一个Windows问题,所以我和那里的同事认为这可能是寻求帮助的更合适的地方。我编写了一个简短的程序,它要么在Windows性能计数器上旋转直到33毫秒过去,要么调用Sleep(33)。前者没有表现出意想不到的效果,但后者似乎(不一致地)将后续处理减慢了大约40毫秒(要么是这样,要么是对从性能计数器返回的值有一定影响)。自旋或Sleep()之后,程序调用例程runInPlace(),

windows - 拥有一个装满旧东西的注册表会减慢 Windows 的速度吗?

关闭。这个问题是off-topic.它目前不接受答案。想改进这个问题吗?Updatethequestion所以它是on-topic用于堆栈溢出。关闭11年前。Improvethisquestion我知道严格来说这不是一个编程问题,但我经常从伪技术人员那里听到的是,注册表中有很多条目会降低基于Windows的PC的速度。我认为这个想法来自那些试图对他们的PC进行故障排除以及为什么它运行如此缓慢的人,他们在某个时候打开注册表并看到他们很久以前卸载的程序的剩余条目。但是这个想法有什么道理吗?我不这么认为,因为注册表本质上只是一个数据库,并且在较大的注册表上向下钻取条目不会花费更长的时间。但是