pierwsze, ściśle odpowiedzieć na to pytanie - przynajmniej jak podano w tytule - -Xdebug
tylko umożliwia obsługę debugowania w VM użyciu JVMDI w JVMs przed 5,0. Więc samo w sobie niewiele robi. Ponadto JVMDI jest deprecated since 5.0 na rzecz JVMTI:
- Xdebug
start ze wsparciem dla JVMDI włączone. JVMDI jest przestarzałe i nie jest używane do debugowania w J2SE 5.0, więc ta opcja nie jest potrzebna do debugowania w J2SE 5.0.
Więc -Xdebug nie robi nic więcej, a ważnym elementem jest:
-Xrunjdwp:<name1>[=<value1>],<name2>[=<value2>]...
lub rozpoczynając z Java 5.0, nowsze (które powinny wolisz jako środek JDWP w 5,0 używa interfejs JVM TI do VM zamiast starszy interfejs JVMDI):
--agentlib:jdwp=<name1>[=<value1>],<name2>[=<value2>]...
teraz, o ile mi wiadomo, tylko loading the jwdp agent i/lub konfigurowanie JVM słuchać do połączenia gniazda na danym p lub nie ma zauważalnego wpływu na wydajność. Ale łączy się z debuggerem.
Nawet ładowanie agenta jwdp bez dołączania debuggera [może mieć obniżenie wydajności] (http://developer.amd.com/resources/documentation-articles/articles-whitepapers/java-performance-when-debugging-is-enabled/). – nodmonkey