2014-11-06 4 views
1

Jess clear() 함수를 사용하고 있는데 성능이 느린 문제가 있습니다. (모든 호출마다 100ms가 걸리므로 예상 시간이 2 초인 20 번이므로 사용해야합니다.) 더 나은 성능을 위해 사용할 수있는 대안 (jess 엔진을 종료하는 함수 또는 모든 템플릿, 사실 및 규칙을 삭제하는 함수)이 있습니까?제스 룰 엔진 클리어 함수 성능

답변

1

이것은 애플리케이션을 실행하는 방법에 따라 약간 다릅니다. 당신은 자바 응용 프로그램에서 제스를 호출하는 경우, 당신은

jess.Rete rete = new jess.Rete(); 
// load functions 
for(int i = 0; i < 20; i++){ // 20 times  
    // load templates, rules, facts,... 
    rete.run(); 
    rete.clear(); 
} 

그러나이 점에 유의하여 사실과 POJO를의 수에 따라 하나 절차는 자바 객체를 많이 삭제할 수 있습니다 단순히

for(int i = 0; i < 20; i++){ // 20 times 
    jess.Rete rete = new jess.Rete(); 
    // load functions, templates, rules, facts,... 
    rete.run(); 
} 

보다는 수 , 평소 결과와 함께. 그러나 당신은 그것을 피할 수 없을 것이며, 제스 문제도 아닙니다.

+0

예 자바를 사용하지만 코드가 변경되었지만 작동하지 않습니다. –

+0

"작동하지 않음"이 매우 밝습니다. – laune

+0

null 포인터 예외가 발생했습니다. –