它们是年轻一代垃圾收集的算法.
第二个(UseParNewGC)通过并发tenured generation垃圾收集自动激活(参见Java Concurrent and Parallel GC),但两个并行算法之间是否存在差异?
在这里帮我辩论.. :)
这里的slf4j站点http://www.slf4j.org/faq.html#logging_performance表示由于参数化日志记录,不需要日志记录保护.即不是写作:
if(logger.isDebugEnabled()) {
logger.debug("Entry number: " + i + " is " + String.valueOf(entry[i]));
}
Run Code Online (Sandbox Code Playgroud)
你可以逃脱:
Object entry = new SomeObject();
logger.debug("The entry is {}.", entry);
Run Code Online (Sandbox Code Playgroud)
这真的没问题,或者它是否会产生(虽然更低)创建传递给trace方法的静态字符串的成本..?
我想把应用服务器的Permgen转储.
我不想使用,-XX:+TraceClassLoading -XX:+TraceClassUnloading
因为我不想重新启动服务器,我也不想使用jconsole
.
我有任何工具jmap
(用于堆转储没有找到permgen的任何选项)来获得permgen,以便我只能提供pid
.
今天我在Intellij中运行一个简单的TestKit测试时遇到了一些问题.这些测试是针对Scala代码的(我有Intellij的Scala插件),它基于Ray Roestenburg的例子.
Intellij项目是使用"Maven模块"创建的,然后我将所有依赖项添加到并创建了我的项目.测试位于以下位置:
ActorBlast/src目录/测试/斯卡拉/ basicTest.scala
我基本上在测试中"右键单击"并选择"运行".我得到的是以下错误:
"C:\ Program Files\Java\jdk1.7.0_25\bin\java"-Didea.launcher.port = 7540 ...测试于下午2:29开始...无法加载Suite类.这可能是由于您的运行路径中的错误.
缺少类:BasicActorSpec java.lang.ClassNotFoundException:java.net.URLClassLoader $ 1.run(URLClassLoader.java:366)中的BasicActorSpec,java.security.AccessController上的java.net.URLClassLoader $ 1.run(URLClassLoader.java:355).位于java.lang.ClassLoader.findClass(URLClassLoader.java:354)的doPrivileged(本机方法)位于sun.misc.Launcher的java.lang.ClassLoader.loadClass(ClassLoader.java:424)$(AppClassLoader.loadClass)(Launcher.java: 308)在java.lang.ClassLoader.loadClass(ClassLoader.java:357)org.scalatest.tools.Runner $$ anonfun $ 35.apply(Runner.scala:2393)at org.scalatest.tools.Runner $$ anonfun $ 35 .apply(Runner.scala:2391)scala.collection.TraversableLike $$ anonfun $ filter $ 1.apply(TraversableLike.scala:264)在scala的scala.collection.immutable.List.foreach(List.scala:318).采集.TraversableLike $ class.filter(TraversableLike.scala:263)位于org.scalatest的org.scalatest.tools.Runner $ .doRunRunRunDaDoRunRun(Runner.scala:2391)的scala.collection.AbstractTraversable.filter(Traversable.scala:105). tools.Runner $$ anonfun $ runOptionallyWithPassFailReporter $ 2.apply(Runner.scala:1006)atg.scalatest.tools.Runner $$ anonfun $ runOptionallyWithPassFailReporter $ 2.apply(Runner.scala:1005)at org.scalatest.tools.Runner $ .withClassLoaderAndDispatchReporter(Runner.scala:2659)位于org.scalatest的org.scalatest.tools.Runner $ .runOptionallyWithPassFailReporter(Runner.scala:1005)org.scalatest.tools.Runner $ .run(Runner.scala:845). tools.Runner.run(Runner.scala)位于org.jetbrains.plugins的org.jetbrains.plugins.scala.testingSupport.scalaTest.ScalaTestRunner.runScalaTest2(ScalaTestRunner.java:144).scala.testingSupport.scalaTest.ScalaTestRunner.main(ScalaTestRunner.java:35)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)at sun.reflect.DelegatingMethodAccessorImpl.在com.intellij.rt.execution.application.AppMain.main(AppMain.java:120)的java.lang.reflect.Method.invoke(Method.java:606)中调用(DelegatingMethodAccessorImpl.java:43)execution.application.AppMain.main(AppMain.java:120)execution.application.AppMain.main(AppMain.java:120)
进程以退出代码0结束
我无法弄清楚这意味着什么.我做了很多搜索,但似乎无法找到答案.请注意,跑步者抱怨没有找到的类是我正在尝试测试/运行的类.basicTest.scala看起来像这样:
// Testing specific imports
import org.junit.runner.RunWith
import org.scalatest.junit.JUnitRunner
import org.scalatest.{ShouldMatchers, WordSpecLike, BeforeAndAfterAll} …
Run Code Online (Sandbox Code Playgroud) 最近,我写了一个类,在其中我发现我可以减少~10个字节/元素的内存消耗,但这只是以使代码更加复杂为代价.这使编译.class
文件的大小增加了大约10KB.
我假设JVM必须将.class
文件加载到内存中,因此除非至少有1000个元素,否则这些更改不会为自己付费.但是,除非类文件中额外的10KB是增加代码复杂性的唯一成本,否则该算法无法解决.
这个Oracle博客表明,permgen中的类消耗了相当多的额外内存,而不仅仅是基于.class
文件 - 例如,我怀疑更复杂的代码可能需要更多的内存来优化元数据.
所以,这个问题有两个部分:
Dalvik VM的类似细节将不胜感激,但我主要关注的是OpenJDK和其他"主流"JVM.
我有以下mongoid模型继承自Entry模型:
class Entry::Twitter < Entry
field :retweet_count, :type => Integer, :default => 0
field :retweeted, :type => Boolean, :default => false
field :favorited, :type => Boolean, :default => false
# in_reply_to_screen_name, in_reply_to_status_id_str, in_reply_to_user_id_str
field :reply, :type => Hash
field :from, :type => Hash # user: id_str, name, screen_name
field :time, :type => Time # created_at
field :data, :type => Hash # entities (hashtags and user_mentions)
field :assets, :type => Hash # urls from original entities
field :service, :type => String, …
Run Code Online (Sandbox Code Playgroud) 我们希望比较不同环境(Windows,Solaris,...)中相同Java版本(1.5)的不同JVM的一般性能(CPU,I/O,网络......).
您知道任何可用于比较不同JVM结果的JVM基准测试应用程序吗?
非常感谢你.
我发现与使用Java编码相比,在TIBCO中开发WS要快得多.
使用TIBCO作为您的WS服务提供商和服务请求者是明智的投资吗?
同时也是开发JMS消费者和发布者的先前问题.
我的服务器端Java代码如何使用/监听BW流程?到目前为止,我读到了有关TIBCO Adapters的功能,它具有许多功能,如监控,但这只是一个开销吗?在Java应用程序中编写WS&JMS代码是否更好?
您如何决定是否在Java或TIBCO中实现功能(例如发送邮件,记录等)?
非常感谢!Thirdy
我必须为WebLogic实现一个简单的(非集群)计时器,似乎有两种不同的"标准"选项
有没有人对使用CommonJ TimerManager而不是在WebLogic 10.0中使用EJB3 TimerService有任何建议?
谢谢.