473,320 Members | 1,846 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,320 software developers and data experts.

Jeff Relf's Brilliant Discovery -- And why .NET and Java should beOSS


What is /automatic/ garbage collection, and how do I know that it is
really efficient?

If I use mono, I can look at the code.

But if I use Java and .NET -- I have no idea.

A brilliant programmer called Jeff Relf just discovered a more efficient
way of clearing memory -- does GC do this?

How could I possibly know?

How could I improve my own GC if I didn't have access to the source?

Right now, mono is the only and best mainstream CLR/OO solution because
I can know -- /for/ /sure/ !!

Jul 21 '05 #1
8 1822
GC in .NET and Java is about safety: protection against virus and memory
corruption; not about raw speed. You cannot achieve ultimate raw speed and
be protected against virus at the same time.

The following two parts article by Jeff Richter is a good introduction to
the GC of .NET:
http://msdn.microsoft.com/msdnmag/is...I/default.aspx

This article is a little outdated and make reference to some features of the
Beta 1.0 which doesn't exist anymore but the overall idea is still true.

--
Sylvain Lafontaine, ing.
MVP - Technologies Virtual-PC
"John Bailo" <ja*****@texeme.com> wrote in message
news:Ab********************@speakeasy.net...

What is /automatic/ garbage collection, and how do I know that it is
really efficient?

If I use mono, I can look at the code.

But if I use Java and .NET -- I have no idea.

A brilliant programmer called Jeff Relf just discovered a more efficient
way of clearing memory -- does GC do this?

How could I possibly know?

How could I improve my own GC if I didn't have access to the source?

Right now, mono is the only and best mainstream CLR/OO solution because
I can know -- /for/ /sure/ !!

Jul 21 '05 #2

Hi Sylvain_Lafontaine ( and John_Bailo ),

John_Bailo wrote: << A Zombie programmer called Jeff Relf
just discovered a more efficient way of clearing memory
-- does GC do this ? >>

John is referring to Simon_Cooke's suggestion
that my X.CPP create a second heap so that it could be Instantly destroyed
instead of wasting 7 seconds of CPU time when a certain button was pressed.

The 7 seconds was required to free almost a million pointers,
it was shunted off onto a thread, of course,
....a thread which no longer needs to be called.

X.CPP is my Hyper_Custom e-mail client and newsreader ( .13 megs ):
http://www.Cotse.NET/users/jeffrelf/X.EXE
The settings are here:
http://www.Cotse.NET/users/jeffrelf/X.TXT
X's VBA macros for Visual_Studio_2003:
http://www.Cotse.NET/users/jeffrelf/X.VB

http://www.Cotse.NET/users/jeffrelf/X.CPP
http://www.Cotse.NET/users/jeffrelf/X.VCPROJ

Thanks to Simon_Cooke's suggestion X now links with single_threaded libaries,
i.e. it now uses the /ML switch ( MS_CPP_7_1, Visual_Studio_Net_2003_Pro ).

Although I would Never dream of using anything else, myself,
X is probably not appropriate for 99.999 percent of Useneters.

Sylvain_Lafontaine wrote: << The following two parts article by Jeff Richter
is a good introduction to the GC of .NET:
http://msdn.microsoft.com/msdnmag/is...I/default.aspx >>

Very interesting, but I see some serious problems with the above:
1. Memory doesn't get freed until the heap is full,
that means more Disk_Swapping under low memory conditions.
That alone disqualifies C# for serious apps, e.g. editing large files.
2. It's Fricken_Complex !
There's a large learning curve to understanding it all.
3. I simply revel in the simplicity and flexibility of low_level coding
e.g. #define, realloc(), memmove(), sprintf(), etc.

Basically, I see Java and C# as mutations,
sure, they work for some people... but many others will never want it.

Although C/C++'s #define is as dangerous as it is powerful,
it allows me to create My_Own mutations,
....Hyper_Custom/Lean/Fast solutions such as:

#define LOOP while ( 1 )

#define Loop( N ) int J = - 1, LLL = N ; while ( ++ J < LLL )

#define LoopTo( StopCond ) \
while ( Ch && ( Ch = ( uchar ) * ++ P ) \
&& ! ( Ch2 = ( uchar ) P [ 1 ], StopCond ) )

By the way, LoopTo() is a recent creation of mine,
and it introduced a wild bug into X.CPP ( which I just now fixed ).

Now playing, Sole's Slow_Cold_Drops ( Nerd Rap... Yeeea-a-a ! ! ! )

http://www.Cotse.NET/users/jeffrelf/Slow_Cold_Drops.MP3
( 5.7 megs, 192 kbps )
http://www.Cotse.NET/users/jeffrelf/...hway_Blues.MP3

Jul 21 '05 #3
In comp.lang.java.advocacy John Bailo <ja*****@texeme.com> wrote or quoted:
How could I improve my own GC if I didn't have access to the source?

Right now, mono is the only and best mainstream CLR/OO solution because
I can know -- /for/ /sure/ !!


Source code to Java JDK 5.0:

http://www.sun.com/software/communit...2/download.xml
--
__________
|im |yler http://timtyler.org/ ti*@tt1lock.org Remove lock to reply.
Jul 21 '05 #4
In comp.lang.java.advocacy, Tim Tyler
<ti*@tt1lock.org>
wrote
on Tue, 26 Apr 2005 17:40:10 GMT
<IF********@bath.ac.uk>:
In comp.lang.java.advocacy John Bailo <ja*****@texeme.com> wrote or quoted:
How could I improve my own GC if I didn't have access to the source?

Right now, mono is the only and best mainstream CLR/OO solution because
I can know -- /for/ /sure/ !!


Source code to Java JDK 5.0:

http://www.sun.com/software/communit...2/download.xml


You must first register or log into the Sun Download Center and agree to
the license agreement before you can download this product.

Product Description Platform(s) Delivery Format Download Link(s) ...
(Interesting Website design. The Content-Type is text/html.
The Doctype is HTML 4.01 Transitional. Is Sun having problems
with a certain other vendor's browser? :-) )

--
#191, ew****@earthlink.net
It's still legal to go .sigless.
Jul 21 '05 #5
Tim Tyler wrote:
In comp.lang.java.advocacy John Bailo <ja*****@texeme.com> wrote or quoted:


*plonk*

Jul 21 '05 #6
chrisv wrote:
Tim Tyler wrote:

In comp.lang.java.advocacy John Bailo <ja*****@texeme.com> wrote or quoted:

*plonk*

They are like those wooden Russian dolls that fit inside each other:
Peter Kohlmann ( largest )
ChrisV ( medium )
Rick (smallest -- minime ).
--
Texeme
http://texeme.com
Jul 21 '05 #7
So?.
Jul 21 '05 #8
In comp.lang.java.advocacy, Intel Inside
<In**********@thespamfactory.com>
wrote
on Wed, 27 Apr 2005 10:20:00 GMT
<kH*******************@news-server.bigpond.net.au>:
So?.


GPL is more than simply making the code available for download. :-)

--
#191, ew****@earthlink.net
It's still legal to go .sigless.
Jul 21 '05 #9

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

56
by: john bailo | last post by:
I just installed mono from ximian on my redHat 9 workstation and wrote a simple program from the interesting book ado.net in c# by Mahesh Chand. mono is fun ( is there ado for linux ? ...
0
by: John Bailo | last post by:
Why does Jeff Relf spread such misery ??? Could it be that others shun him because of the bright glow shining from his chrome a dome. ??? -- W '04 <:> Open Source
6
by: John Bailo | last post by:
Finally, a place where Jeff Relf can shop with pride: http://www.fatbaldandproud.com/ -- *W '04* <:> Open Source <:> Open Competition
0
by: Unagi | last post by:
Just seen: New image of Jeff Relf and His Trackball. http://www.ottawaathleticclub.com/images/trackballs.jpg Yes, Jeff, the buttons are falling apart...the contacts worn, the MicroCrud...
383
by: John Bailo | last post by:
The war of the OSes was won a long time ago. Unix has always been, and will continue to be, the Server OS in the form of Linux. Microsoft struggled mightily to win that battle -- creating a...
58
by: Jeff_Relf | last post by:
Hi Tom, You showed: << private const string PHONE_LIST = "495.1000__424.1111___(206)564-5555_1.800.325.3333"; static void Main( string args ) { foreach (string phoneNumber in Regex.Split...
8
by: John Bailo | last post by:
What is /automatic/ garbage collection, and how do I know that it is really efficient? If I use mono, I can look at the code. But if I use Java and .NET -- I have no idea. A brilliant...
0
by: U S Contractors Offering Service A Non-profit | last post by:
Brilliant technology helping those most in need Inbox Reply U S Contractors Offering Service A Non-profit show details 10:37 pm (1 hour ago) Brilliant technology helping those most in need ...
0
by: Siyodia | last post by:
This is a java program which i need to run facing compilation error Its consuming a third party web service method I have the supported files(folder) which contain necessary class files...
0
by: DolphinDB | last post by:
Tired of spending countless mintues downsampling your data? Look no further! In this article, you’ll learn how to efficiently downsample 6.48 billion high-frequency records to 61 million...
0
by: ryjfgjl | last post by:
ExcelToDatabase: batch import excel into database automatically...
1
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
0
by: Vimpel783 | last post by:
Hello! Guys, I found this code on the Internet, but I need to modify it a little. It works well, the problem is this: Data is sent from only one cell, in this case B5, but it is necessary that data...
0
by: jfyes | last post by:
As a hardware engineer, after seeing that CEIWEI recently released a new tool for Modbus RTU Over TCP/UDP filtering and monitoring, I actively went to its official website to take a look. It turned...
0
by: ArrayDB | last post by:
The error message I've encountered is; ERROR:root:Error generating model response: exception: access violation writing 0x0000000000005140, which seems to be indicative of an access violation...
1
by: PapaRatzi | last post by:
Hello, I am teaching myself MS Access forms design and Visual Basic. I've created a table to capture a list of Top 30 singles and forms to capture new entries. The final step is a form (unbound)...
0
by: Defcon1945 | last post by:
I'm trying to learn Python using Pycharm but import shutil doesn't work
0
by: Faith0G | last post by:
I am starting a new it consulting business and it's been a while since I setup a new website. Is wordpress still the best web based software for hosting a 5 page website? The webpages will be...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.