【Java:空终结器也会对性能产生影响吗?】教程文章相关的互联网学习教程文章

Java-限制Visual VM中的性能分析【代码】

我正在尝试新JDK附带的VisualVM程序.我正在对其进行性能分析,并尝试仅在特定程序包中的方法上分析CPU. 我在“仅配置文件类”中添加了以下内容:jig.*夹具是我要检测的包装.不幸的是,我得到了该软件包或任何子软件包中没有的其他方法的结果.解决方法:我可以重现您问题的唯一方法是,如果未选中“配置新的可运行对象”框.当我将其保留为选中状态时,即使该代码不符合过滤条件,探查器也会选择以新线程形式启动的代码.我猜这是不清楚的功...

java-JSP Scriptlet与MVC在性能方面的比较

我来自一次采访,CTO(首席技术官)告诉我,有一个系统(已经运行了5年以上),他们仍然不希望仅在性能上使用MVC.我知道大多数MVC使用反射来调用方法(本质上很慢),但是许多MVC(我知道Struts做到了,我读过代码)将其调用的方法缓存起来,因此我不必“找到”该方法一直都在调用. 目前,它们坚持使用scriptlet(并且不使用JSPTag).我想知道,纯粹是Scriplets会比MVC发挥出色的性能吗?他们偏爱无状态会话与有状态会话,以避免会话迁移,会话跟踪等. ...

Java性能-如何以高性能将大数组写入磁盘/ SD卡?【代码】

在Java中,有没有一种方法可以将大量的整数写入磁盘?我在Android上执行此操作,但找不到与本地C代码接近的方法. 生成的文件不必移植到具有不同表示形式的不同机器上,因此从逻辑上来说,只需对基础字节进行批量写入就足够了.但是我不知道如何从Java有效地做到这一点. 我尝试搜索网络,并测试了以下内容: >序列化-非常慢,符合预期.>使用NIO-仍然很慢-Android跟踪一次显示每个整数一次的操作: 提前致谢 NIO代码:int[] array = new arr...

java字符串格式化性能对比String.format/StringBuilder/+拼接

String.format由于每次都有生成一个Formatter对象,因此速度会比较慢,在大数据量需要格式化处理的时候,避免使用String.format进行格式化,相反使用StringUtils.leftPad,StringUtils.rightPad,然后使用+一次性(注:分为多个独立的+性能会受到较大影响)或者StringBuilder进行拼接能够极大地提升性能。LZ在一个海量数据导出场景中,改写后(其中包括很多BigDecimal及计算)导出格式化性能提升了大约2/3。纯粹的字符串格式化性能平...

如何在i7上衡量Java性能?

我正在尝试对真实算法的两种不同实现进行典型的“ A / B测试”方法,在两种情况下都使用相同的数据集.该算法在执行方面具有确定性,因此我真的希望结果是可重复的. 在Core 2 Duo上也是如此.仅使用linux“ time”命令,我将获得大约0.1%的执行时间变化(超过10次运行). 在i7上,我将获得各种各样的变化,并且我可以轻松地将其平均变化30%.我认为这是由于i7所做的各种CPU优化(动态超频等)引起的,但确实很难进行这种测试.还有其他方法可以...

与Java相比,Android C是否有更好的性能?

在Android NDK网站上,您可以阅读:The Android NDK is a companion tool to the Android SDK that lets youbuild performance-critical portions of your apps in native code. … If you write native code, your applications are still packaged into an .apk file and they still run inside of a virtual machine on the device … Using native code does not result in an automatic performanceincrease, but always incr...

弹力城堡在Java中的性能【代码】

生成DH参数时,使用Bouncy Castle Provider的性能出现问题.谁知道为什么下面的Bouncy Castle示例比使用标准提供程序慢50倍左右? 使用Bouncy Castle提供程序:Security.addProvider(new BouncyCastleProvider()); AlgorithmParameterGenerator generator = AlgorithmParameterGenerator.getInstance("DH", "BC"); for (int i = 0; i < 3; i++) {generator.init(1024, new SecureRandom());AlgorithmParameters params = generator.g...

java-如何提高我的A *路径查找器的性能?

因此,基本上,我编写了一个A *路径查找器,该路径查找器可以找到通过障碍物的路径并进行移动.我基本上将http://www.policyalmanac.org/games/aStarTutorial.htm的伪代码实现为真实代码,并且还使用了二进制堆方法从开放列表中添加和删除项目. 使用二进制堆可以显着提高性能,比我以前使用的插入排序算法快约500倍. 问题在于它仍然平均需要150万纳秒,大约是0.0015秒. 所以问题是,我的计划是制作一个塔防游戏,每次我向地图添加塔时,每个暴...

Java的ExecutorService性能

我有一个主线程,它将作业分派到线程池.我正在使用Java的Executor框架. 从事件探查器(VirtualVM)中,我可以看到每个线程的活动:我可以看到主线程正在等待很多时间(因为执行者的队列有上限),这意味着执行者的队列在大多数时间都已满.但是,执行者的线程并不像我想象的那样忙.他们中大多数人的等待时间为75%.在virtualVM中,它表示等待Monitor. 谁能解释为什么会这样?为什么执行器线程会在仍有大量工作要做时等待?以及如何提高执行器...

java-如何使用JDBC来最大化Netty的性能?

我正在使用Netty 4和JDBC(用于连接池的BoneCP)开发HTTP应用程序服务器. 到目前为止,我正在一个处理程序上完成所有工作(涉及数据库连接,HttpAsyncClient等的工作).每个作业完成后,我将关闭所有I / O. 据我所知,只要没有任何东西阻塞工作者线程,Netty就会表现良好. 但是,我read JDBC连接创建了阻塞的I / O. 是否有将JDBC与Netty一起使用以改善可伸缩性和性能的良好实践?解决方法:确保您有足够的数据库连接,如果您的池没有连接,显然您...

java-JPA性能:实体还是实体ID作为查询参数?

假设有两种实体类型:Book(具有主键bookId)和Author(具有主键authorId).作者写了0 … n本书.因此在Book中使用@ManyToOne引用了Author. 如果我们要检索某位作者撰写的所有书籍,则可以在JPQL中做两件事(例如NamedQuery): >从书本b中选择b b.author =:author(实体作为参数)>从书本b中选择b b.author.authorId =:authorId(实体的主键ID作为参数) 在第一个选项中,我们必须注意传递的对象实际上是Author类型的,并且它已经具有主键. 但...

java-if(condition)else或if(condition),使用break时性能是否有所不同?【代码】

问题有点模棱两可,这两个在汇编代码/性能方面是否等效:public void example{do{//some statements;if(condition) break;//some statements;}while(true); }与:public void example{do{//some statements;if(condition){ break;}else{//some statements;}}while(true); }解决方法:它们是等效的,它们应导致相同的字节码表示形式.因此,就性能而言,它们是相同的. if,else和break是分支指令.在这种情况下,break将终止循环,程序将转到另...

Java-Android-RenderScript-SDK 21中的性能下降【代码】

我正在开发一个需要复杂的Photoshop类型混合效果的项目.我正在使用自定义RenderScript脚本来解决此问题. 我已经在运行Kitkat的Samsung Galaxy S4设备上对其进行了测试,并且一切正常且非常快速. 然后,我尝试在运行Lollipop的Nexus 5上进行测试,发现性能突然下降. 我开始对代码中的各个部分进行计时,以查看哪些部分变慢,并提出了以下建议:Allocation.createFromBitmap - Runtime on Kitkat - ~5-10 millisec - Runtime on Lollipop ...

java-改善crawler4j的性能【代码】

我需要编写一个网络抓取器,在大约100万个网站上抓取并将其标题,描述和关键字保存到1个大文件中(包含抓取的URL和相关单词). URL应该从一个大文件中提取. 我已经在1M URL文件上运行了Crawler4j,并使用以下命令启动了webcrawler:controller.start(MyCrawler.class,20). 20是任意数字.每个搜寻器将结果单词传递到阻塞队列,以供单个线程将这些单词和URL写入文件.我使用了1个编写器线程,以便不与文件同步.我将抓取深度设置为0(我只需要抓...

android-Javafx移植应用程序的性能不佳【代码】

我只是使用gradlew将一个名为“ PuzzlePieces”的样本netbeans javafx项目移植到了android.该应用程序的性能太差了,是什么原因引起的? 我的设备:LG E975,4.4 kitkat解决方法:question包含一些可能的原因,这些原因可能导致基于设备在台式机上运行方式的预期,Android设备的性能可能会变差. 无论如何,“ PuzzlePieces”很快就能胜出,并且与该问题中提到的CSS点有关. Desk类添加了以下内联样式:Desk(int numOfColumns, int numOfRow...