는 coldfusion.runtime 소스 코드를 해킹// 디버그를 볼 수 있었다 경우 궁금 해서요.
allocLargeObjectOrArray: [C, size 8388624
java.lang.OutOfMemoryError: allocLargeObjectOrArray: [C, size 8388624 at
java.util.Arrays.copyOf(Arrays.java:2882) at
java.io.CharArrayWriter.write(CharArrayWriter.java:105) at
coldfusion.runtime.CharBuffer.replace(CharBuffer.java:37) at
coldfusion.runtime.CharBuffer.replace(CharBuffer.java:50) at
coldfusion.runtime.NeoBodyContent.write(NeoBodyContent.java:254) at
[My Code]
내가 CharBuffer를 교체 이유는 무엇 알고 싶습니다, 그것은 복사 이유는 무엇 배열 등 :
특히, 나는 다음과 같이 해당 메모리 부족 오류가 받고 있어요 , 그래서 나는 내 코드를 조정할 수있다.
내 코드 cfloop은 쿼리를 통해 'IIf'문과 'de'함수 호출을 포함하여 해당 필드를 출력합니다.
나는 코드를 고치고 다시 충돌 할 때까지 기다릴 수 있지만, 시행 착오를 사용하지 않고 문제가 무엇인지 정확히 알고 싶다.
감사합니다.
참고 : ColdFusion이 독점 소프트웨어이기 때문에, 이것은 EULA에 대한 _probably_입니다. –
이것이 직접 질문에 답하는 것은 아니지만 iifs를 반복해야하는 경우 3 자 연산자 (9 이상) 또는 junky-looking cfif (8 이하)를 사용하여 코드를 변경하는 것이 좋습니다.)를 사용하여 성능 영향을 줄입니다. –