2009-09-22 4 views

답변

5

(자주 실행되는 코드 즉, 부분), 그리고 결과적으로 컴파일러는 그렇게 할 시간이 더 걸릴 것

또한 참조하십시오. 프로세스가 장시간 (예 : 서버에서) 실행될 때만이 옵션을 사용하므로 문제가되지 않습니다.

-client를 사용하면 클라이언트 응용 프로그램을 실행할 때 컴파일러가 시작될 때 길게 뻗은 부분을 원하지 않기 때문에 수행되는 최적화가 훨씬 가볍고 빠릅니다.

+1

컴파일러가 다른 스레드에서 실행되므로 실제로 일시 중지되지 않습니다. 코드를 컴파일하고 사용할 수있는 사이에는 지연이 있습니다. 서버 핫 스폿은 컴파일하기 전에 더 오래 대기하도록 기본 설정되어 있습니다 (컴파일 시간이 오래 걸리고 더 많은 메모리를 사용하기 때문에). –

0

일부 플랫폼에서는 -server 플래그가 기본적으로 설정됩니다.

(Linux/Solaris 및 메모리가 2GB 이상이고 프로세서가 2 개 이상인 경우). 당신이 말할 수 있듯이, 그 요구 사항들은 오래 전에 정의되었습니다. 나는 지금 그것보다 잘 지정된 노트북을 가지고있다 ...!

Windows가 클라이언트 java 만 실행하고 * nix가 서버 java를 실행한다고 가정하기 때문에 Windows에서이 설정을 절대로 기본값으로 설정하지 않았을 것으로 추측합니다.

최근까지 우리는 Windows Server에서 장기 실행 서버 프로세스를 실행하고 플래그를 돌리는 것이 눈에 띄는 차이를 만들었습니다.

관련 문제