我们正在使用Drools版本6.2.0来解析我们的一些规则。但有时当我们有大量运行时,Drools会调用JIT编译器,这会导致失败。我们已经在我们的Junit测试中涵盖了这一点,并且我们得到了以下错误
java.lang.NoSuchMethodError: org.mvel2.compiler.BlankLiteral.<init>(Ljava/lang/String;)V
at ConditionEvaluatoref4dc802b6174038b0307f5e6196e229.evaluate(Unknown Source)
at org.drools.core.rule.c
我试图测量执行这个循环的时间:
for (boolean t : test) {
if (!t)
++count;
}
结果不一致。最后,我设法通过以下代码获得了一致的结果:
public class Test {
public static void main(String[] args) {
int size = 100;
boolean[] test = new boolean[10_000_000];
java.util.Random r = new java.util.Random();
是否有任何函数/实用程序/工具可以解除给定次数的循环(n次迭代)的角色。(Java语言)
例如:实用程序必须在下一次循环中展开3次:
for(int i=0; i<10; i++){
int k = k + 1;
}
转换后的代码必须是:
k = k + 1;
k = k + 1;
k = k + 1;
for(int i=3; i<10; i++){
int k = k + 1;
}
谢谢伊塔玛。
在更新了一些服务器以在Java6更新14上运行之后,我收到了一些奇怪的错误(可能每天一次)。
这些错误类似于
#
# A fatal error has been detected by the Java Runtime Environment:
#
# java.lang.OutOfMemoryError: requested 1759920 bytes for Chunk::new. Out of swap space?
#
# Internal Error (allocation.cpp:215), pid=26706, tid=317545360
# Error: Chunk::n
在对Clojure应用程序进行基准测试并试图确定性能问题时,我注意到了这种奇怪的行为:即使整个程序是用Java编写的,从Leiningen启动时,它似乎也经历了明显的减速。
假设我有这个Java程序:
public class Foo {
public static void main(String[] args) throws Exception {
for (int i = 0; i < 10; i++)
run();
}
public static void run() {
final long s
鉴于这一守则:
class Foo {}
public class Test {
public Foo makeFoo(String p, String q) {
return new Foo(){
public void doSomething() {
System.out.println(p);
}
};
}
}
当您编译并运行java
考虑使用` `ObjectOutputStream‘序列化给定数量的对象的简单程序(发布在下面)。它多次调用相同的函数将对象序列化为文件。第一次调用比后续调用花费的时间更长(差异取决于被序列化的对象的数量):
Serializing 10000 objects...
Time elapsed: 498ms
Time elapsed: 168ms
Time elapsed: 186ms
Serializing 100000 objects...
Time elapsed: 1815ms
Time elapsed: 1352ms
Time elapsed: 1338ms
Serializing
我们在WebSphere 7/ IBM 6中遇到了一个奇怪的问题,其中一个节点存在一些初始化问题。
我们有一些调用InitialContext.lookup的代码,在这个节点上有时会得到以下异常:
Caused by: java.lang.ArrayIndexOutOfBoundsException
at java.lang.String.getChars(String.java:666)
at java.lang.StringBuilder.append(StringBuilder.java:207)
at javax.naming.sp
考虑一下这个小班:
public class Example {
public int plus(int a){
int b;
b = 1;
return b+a;
}
}
javap说:
public int plus(int);
descriptor: (I)I
flags: ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
0: iconst_1
1: istore_2
2: iload_2
3: iload_1
4: iadd
5