title: using Concurrent Mark Sweep GC Collector?
body: <p>This question is based on my understanding from section Java Garbage Collectors of <a href="http://www.oracle.com/webfolder/technetwork/tutorials/obe/java/gc01/index.html">link</a>
  Looks like jvm by default uses "Parallel GC" on windows 7 as i confirmed it -XX:+PrintCommandLineFlags -version. This article also says</p>
  
  <blockquote>
    <p>The parallel garbage collector uses multiple threads to perform the
    young generation garbage collection. This collector should be used when a lot of
    work need to be done and long pauses are acceptable</p>
  </blockquote>
  
  <p><em>i am not sure which collector is used for tenured space collection by Parallel GC?</em></p>
  
  <p>Also i could not think of applications where long pauses are acceptable(will cause less responsiveness). Anyone would like to less pauses for GC and make app as responsive as it can.</p>
  
  <p>Then i read <code>Concurrent Mark Sweep (CMS) Collector</code> which collects the tenured generation</p>
  
  <p>CMS says <code>it require low pause times and can share resources with the garbage collection</code>. </p>
  
  <p><em>My question is should not most
  of web applications use Concurrent Mark Sweep (CMS) Collector because of its responsiveness.?</em> I am sure there must be some other factors also to make the
  decision but after going thru this link to me feels like i should change the default GC type to Concurrent Mark Sweep (CMS) Collector. Any thoughts/insights?</p>
  
  <p>Further i think application can be best if we use CMS Collector and parallel collector together where CMS is used for old generation and parallel fpr
  younger generation</p>