This week's book giveaway is in the Performance forum.
We're giving away four copies of The Java Performance Companion and have Charlie Hunt, Monica Beckwith, Poonam Parhar, & Bengt Rutisson on-line!
See this thread for details.
Win a copy of The Java Performance Companion this week in the Performance forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

System.gc() problem

 
Anuji Philip
Ranch Hand
Posts: 46
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
From Boone Exam:
Which statement about g.c are true?Select all valid answers?
a>you can directly free the memory allocated by an object
b>you can directly run the g.c when I want
c>g.c informs your object when it is about to be garbage collected.
d>g.c reclaims an object's memory as soon as it becomes a candidate for garbage collection.
e>g.c runs in low memory situations.
Ans: b,c
But my answer was c,e.
If we use System.gc() ,is it g.c thread forced to run immediately but no garbage collection takes place until it is eligible by some random
manipulation of memory management?My idea was g.c thread will run when eligible only eve if we use System.gc().
 
William Brogden
Author and all-around good cowpoke
Rancher
Posts: 13064
6
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Calling System.gc() does not guarantee that a GC thread will be started, so I disagree with b.
Bill
 
Valentin Crettaz
Gold Digger
Sheriff
Posts: 7610
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
And e is wrong too, since there is no guarantee that this will be the case. There is no specification as how to implement the GC. Running the GC in low-memory situation can be implemented by one JVM provider but another provider may have another heuristic.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic