草庐IT

PERFORMANCE

全部标签

java - 每次迭代多次使用 ArrayList.get() 时是否会对性能产生影响?

对于一般的Android开发,执行以下操作是否更昂贵:(例一)for(intx=0;x在这个实现上(示例2)for(intx=0;x当多次使用.get()而不是每次迭代都创建该对象的新实例时,我找不到任何性能影响的分解。我认为.get()在资源方面使用不多,因为元素的位置已经知道,但是在处理许多属性时最好只获取如示例二所示,该对象一次? 最佳答案 在循环构造中多次调用get()方法不会对性能产生影响。get()方法不执行任何搜索类型的操作。该位置是已知的,因此RAM中的确切位置也是已知的。所以它需要做的就是进行一次RAM访问,这是一

java - Android 性能 : Strings vs. 枚举与静态最终整数

部分内容之前已经在SO上被问过,但我还没有找到很多确凿的证据和/或决定性的答案。当在Bundle中围绕Android传递信息时,可以通过使用strings、enums或staticfinalints观察性能增加/减少的情况(如果有的话)?举个例子,在我的应用程序中有好几次加载和显示某个fragment。每次加载fragment时,都会将一个Bundle传递给它,其中包含两个参数:正在显示的数据的ID,以及指示如何显示它的模式。我设置了一个自定义状态寻呼机适配器来完成所有的起重工作,但问题的症结在于:其中哪些(如果有的话)会提供任何性能增益/损失:Bundleargs=newBundle

android - 如何将我的Android项目转换为maven项目

我有一个使用Eclipse开发并推送到github的Android项目。现在我想将我的Android项目转换为ma​​ven项目,该怎么做? 最佳答案 尝试关注GettingStartedGuidemaven-android-插件的。为了转换您已经存在的项目,您基本上必须:1)创建一个pom.xml。为此,您可以使用描述的Maven原型(prototype)here:mvnarchetype:generate-DarchetypeArtifactId=android-quickstart-DarchetypeGroupId=de.a

android - 如何在 Nvidia Shield 上正确计时 Android RenderScript 代码

我已经在RenderScript中实现了一个小型CNN,并且想分析不同硬件上的性能。在我的Nexus7上,时间有意义,但在NVIDIAShield上却没有。CNN(LeNet)在队列中的9层中实现,计算按顺序执行。每层单独计时。这是一个例子:conv1pool1conv2pool2resh1ip1relu1ip2softmaxnexus711.1777.81313.3578.3678.0972.10.3261.5572.667shield13.2191.0241.5671.0810.98814.58813.32314.31840.347时间的分布对于nexus来说是正确的,conv1和

java - 如何从 savedInstanceState 恢复 ViewPager

所以我有一个我似乎无法解决的问题。我的一个Activity中有一个ViewPager,比如MainActivity。当Activity在后台被杀死时,我正在实现所有必需的方法来保存和检索实例状态。但是当Activity试图恢复它的状态时,fragment被恢复但它们没有附加到viewpager所以我得到的只是一个白屏。相关代码如下:MainActivity.java@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);//..if(savedInstance

android - 滚动 ListView 时有些图像非常滞后

我有下面的屏幕,其中包含一些图像(每个可见页面6个)。上下滚动对我来说似乎很滞后。就像它再次渲染图像一样。向上滚动似乎比向下滚动更糟糕。有人知道如何提高此类区域的性能以创建漂亮的平滑滚动吗?更新:图片和文字全部取self的SQLite数据库。该列表是使用SimpleCursorAdapter创建的。privateclassHistoryViewBinderimplementsSimpleCursorAdapter.ViewBinder{//privateintwallpaperNumberIndex;privateinttimeIndex;privateintcategoryIndex

android - 如何提升ViewFlipper/ViewAnimator的性能

我正在使用ViewAnimator(ViewFlipper的父类)制作某种交互式书籍。层次结构大致是这样的:...所以书的页面在ViewAnimator中。每个页面都有一个包含多层动画ImageView、TextView、Buttons的FrameLayout...结果证明太多了。通过viewAnimator.showNext()显示书的新页面可能需要几秒钟。所有这些时间都花在了ImageView.onDraw()-Traceview上。-任何布局替代ViewAnimator(ViewPager、ViewGroup的其他实现...)是否会有所改善?-有没有办法预加载ViewViewFl

android - mterp (Dalvik VM) 如何组织其字节码解释循环?

我正在研究AndroidDalvikVM,在读取文件vm/mterp/out/InterpC-portable.cpp中的mterp代码时遇到一个问题。实际上它是dalvikvm的主要解释器循环来解释dex文件中的字节码。如果我写这个文件,我会选择一个switch-case结构来做这样的事情:while(hasMoreIns()){intins=getNextIns();switch(ins){caseMOV://interpretethisinstruction...break;caseADD:...break;...default:break;}}然而,mterp使用的与我的想法非

android - 根据屏幕分辨率调整图像大小 Android

我在正文中有一个背景图片。我想要实现的是:1)-计算访客屏幕分辨率。2)-基于该分辨率,我想调整背景图片的大小。我知道获取屏幕分辨率作为Displaydisplay=getWindowManager().getDefaultDisplay();width_screen=display.getWidth();height_screen=display.getHeight();但我不知道如何根据用户的屏幕分辨率调整图像的大小。有人可以帮忙吗?谢谢.. 最佳答案 在你的布局文件中放一个ImageView并设置android:layout_

java - 关于做大量计算的三个问题

这只是一系列关于进行大量计算的问题。要么我无法在网上找到答案,要么我仍然需要澄清。传递(float,float,float)作为方法参数是否比(float[])更快,其中数组具有三个项?方法返回float[]与设置作为参数传递给方法的float[]的内容是否更快?用实际计算替换方法调用是否更快,即A=sum(B,C)是否比A=B+C慢>?假设sum(x,y){returnx+y}编辑:谢谢大家的回答!在我关闭这个线程之前,如果有人知道的话,我还有一个快速的问题:如果我使用一个类一次又一次地重复计算相同的统计数据(然后将它们丢弃),创建实例变量作为容器以避免连续重新分配和取消分配会更好吗