TIP: Click on subject to list as thread! ANSI
echo: nthelp
to: Ellen K.
from: Adam
date: 2005-05-20 11:10:58
subject: Re: What`s wrong with Microsoft???

From: Adam 

Ellen K. wrote:

> It was an analogy.  If you want your database to do a transaction you
> have to BEGIN TRANSACTION before it starts doing stuff and COMMIT
> TRANSACTION when it's done.  ROLLBACK TRANSACTION goes in your error
> handlers that come after each piece, so that if one piece fails, all the
> pieces that came before get rolled back.
>
> And GC means garbage collection, one problem with which is that you
> never know when the garbage collector is going to do its thing.
>

That's not true. You can call System.gc() whenever you wish or indeed when
it makes sense. Garbage collecting per se has a huge range of possible
solutions which is partly dependant upon ram etc e.g:

low ram - many & often.  Possibly called by app at the end of a given
process (e.g. I show you something graphical & I know it wll take you a
little time to read & make a decision ergo paint & .gc())

high ram - few & far between. Possibly called by the program at a time
which makes sense (e.g. if load is low). i.e. if the time taken to gc &
thus the service slowdown is more important than ram useage then...wait
till it's quiet & do gc then....

In embedded/low power/mem systems then gc becomes important not just to
free up memory but actually because memory consumes energy & if you
want a long battery life then you will need to minimise your use of memory
where possible.

What is more you can set some aspects of gc at the commandline/start time
e.g. java (since 1.4 at least) takes the following args:

-Xnoclassgc       disable class garbage collection
-Xincgc           enable incremental garbage collection
-Xloggc:    log GC status to a file with time stamps

& then you have the inital mem settings e.g.:

    -Xms        set initial Java heap size
    -Xmx        set maximum Java heap size
    -Xss        set java thread stack size

& then you can watch what's going on so as to set your wn .gc() calls via

-XX:+PrintGCDetails


& then finally you have:

-XX:+DisableExplicitGC

Where upon your program is entirely responsible for doing the gc via .gc().


Adam

--- BBBS/NT v4.01 Flag-5
* Origin: Barktopia BBS Site http://HarborWebs.com:8081 (1:379/45)
SEEN-BY: 633/267 270 5030/786
@PATH: 379/45 1 106/2000 633/267

SOURCE: echomail via fidonet.ozzmosis.com

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.