2009-09-22 2 views

답변

5

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

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

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

+1

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

0

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

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

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

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