Tag: 性能

等价方法超载为什么有必要?

我浏览了Google制作的一些JAVA代码,我发现了ImmutableSet: http : //google-collections.googlecode.com/svn/trunk/javadoc/com/google/common/collect/ImmutableSet.html 他们用其他几种方法实现了of()方法: public static ImmutableSet of(E e1, E e2); public static ImmutableSet of(E e1, E e2, E e3); public static ImmutableSet of(E e1, E e2, E e3, E e4); public static ImmutableSet of(E e1, E e2, E e3, E e4, E e5); public static ImmutableSet of(E… elements); 我查看了此处的实施: https : //code.google.com/p/google-collections/source/browse/trunk/src/com/google/common/collect/ImmutableSet.java 有一个创建方法,具有以下签名: […]

如何避免Hbase put操作中的InterruptedIOException

在使用HTable.put方法将数据放入Hbase ,我偶尔会HTable.put以下exception。 但是当我检查该特定rowkey的get操作时,数据实际上已写入rowkey 。 同时我搜索了HMaster和HRegionservers的日志来识别问题。 但无法找到。 请帮助微调Hbase配置以避免InterruptedIOException。 Hadoop Distribution: Apache Version: HBase 1.2.6 Cluster size: 12nodes java.io.InterruptedIOException: #17209, interrupted. currentNumberOfTask=1 at org.apache.hadoop.hbase.client.AsyncProcess.waitForMaximumCurrentTasks(AsyncProcess.java:1764) at org.apache.hadoop.hbase.client.AsyncProcess.waitForMaximumCurrentTasks(AsyncProcess.java:1734) at org.apache.hadoop.hbase.client.AsyncProcess.waitForAllPreviousOpsAndReset(AsyncProcess.java:1810) at org.apache.hadoop.hbase.client.BufferedMutatorImpl.backgroundFlushCommits(BufferedMutatorImpl.java:240) at org.apache.hadoop.hbase.client.BufferedMutatorImpl.flush(BufferedMutatorImpl.java:190) at org.apache.hadoop.hbase.client.HTable.flushCommits(HTable.java:1434) at org.apache.hadoop.hbase.client.HTable.put(HTable.java:1018) 请帮忙解决 某人遇到了同样的例外。 但是在该线程中,没有解释为了避免它需要检查哪些配置 https://groups.google.com/forum/#!topic/nosql-databases/UxfrmWl_ZnM

Android使用Multi thread更快地下载文件

我正在开发一款需要下载大video文件(300-500MB)的应用。 我想知道是否有办法加速使用multithreading下载单个文件。 我在TubeMate这样的应用程序上看到过这种类型的实现,但我对用于实现它的代码一无所知。 我不需要你为我编码:)我只需要一个起点,就像关于这个的文章或教程,tks。

我该如何删除按钮?

我有一个带有我的按钮名称的字符串。 假设它叫做String A String A = myButtonName; 现在,如果我想删除按钮: layout.removeView(myButtonName); 这可行,但是,我不能在字符串上这样做。 我怎么能在我的字符串上做到这一点? 像这样,现在我收到一个错误,因为它是一个字符串: layout.removeView(A); 如何使用与视图对应的字符串删除视图? 从理论上讲,我想将我的字符串强制转换为ViewGroup 简化问题: 我有一个字符串。 该字符串也是我的按钮的变量名称。 我可以使用字符串删除按钮吗?

jvm如何处理在循环中创建对象

List list = new ArrayList(); String[] test = {“ram”, “mohan”, “anil”, “mukesh”, “mittal”}; for(int i =0; i < test.length; i++) { A a = new A(); a.setName(test[i]); list.add(a); } JVM如何处理每个循环中对象a的创建? “列表”如何区分不同的实例? 在每次迭代中创建对象是一种好习惯吗? 如果不是,将对象添加到列表中的最佳解决方案是什么。

Java GCs开销:如果你有10mb或10g *引用的*对象,这有关系吗?

GC必须检查并找出可以收集的对象。 我的问题是,是否有太多要检查的对象会导致GC开销,或者某种程度上GC是否足够智能以避免必须遍历所有对象以找出哪个对象不再被引用?

使用BufferedImage创建非常大的图像文件,奇怪的问题取决于编译和计算机

我试图在Java中创建一个非常大的图像,如下所示: BufferedImage bi = new BufferedImage(58240,1664,BufferedImage.TYPE_INT_RGB); 显然,图像非常大。 现在我遇到的问题是,它似乎在某些计算机上运行良好100%但在其他计算机上运行得很慢(而且这与规格没有任何关系)。 我最重大的突破来自Eclipse,IDE拒绝实际显示图像,而是在其中一台计算机上出现错误,这些计算机显示图像的速度非常慢(需要花费大量时间来调整图像大小等): 线程“AWT-EventQueue-0”中的exceptionjava.lang.OutOfMemoryError:Java堆空间 错误的另一个有趣的元素是,即使在计算机上运行缓慢,我也可以调整窗口的大小,直到不再调用绘制函数,然后再将其设置为大,如果我这样做,那么它运行100速度的百分比。 不知道发生了什么,有什么想法吗?

HttpURLConnection getInputStream()有一秒延迟

我正在使用HttpURLConnection来发出POST请求。 我在测试期间始终观察到相同的行为: 第一个请求运行速度非常快(毫秒) 以下所有请求需要一秒钟+几毫秒 所以有些事情导致1秒的延迟。 它能是什么? 延迟恰好发生在HttpURLConnection#getInputStream()中。 我用HttpClient替换了实现 – 然后一切正常,没有第二次延迟(所以它不是服务器故障)。 但我真的不想使用任何外部依赖,所以我想修复HttpURLConnection的事情……任何想法? 目前的实施情况。 我尝试了stackoverflow的一些提示(向请求添加标题),但没有成功。 URL obj = new URL(url); HttpURLConnection con = (HttpURLConnection) obj.openConnection(); con.setRequestMethod(“POST”); con.setRequestProperty(“Content-Length”, “” + (body == null ? 0 : body.length)); // Send post request con.setDoOutput(true); OutputStream wr = con.getOutputStream(); if (body != null) { wr.write(body); } wr.flush(); wr.close(); BufferedReader rd = […]

java webstart应用程序启动时间太慢了

我有一个带有许多依赖jar的java webstart应用程序(大约20个),它作为一个独立的应用程序在开发环境中快速启动。 但是,当它部署在java webstart中时,启动时间很慢(大约1分钟)。 有没有办法改善启动时间?

为什么Java lamdareflection性能会变差

我构建了一个简单的测试,用Java LambdaMetafactory测量类reflection的性能。 根据各种post,使用LambdaMetafactory的reflection与直接调用getter一样快。 这似乎是最初的,但过了一段时间性能下降。 其中一个测试节目(这似乎是大势所趋): 原来: GET – REFLECTION: Runtime=2.841seconds GET – DIRECT: Runtime=0.358seconds GET – LAMBDA: Runtime=0.362seconds SET – REFLECTION: Runtime=3.86seconds SET – DIRECT: Runtime=0.507seconds SET – LAMBDA: Runtime=0.455seconds 最后: GET – REFLECTION: Runtime=2.904seconds GET – DIRECT: Runtime=0.501seconds GET – LAMBDA: Runtime=5.299seconds SET – REFLECTION: Runtime=4.62seconds SET – DIRECT: Runtime=1.723seconds SET – LAMBDA: Runtime=5.149seconds […]