Re: Will memory get over-used?

Tech-Archive recommends: Speed Up your PC by fixing your registry



there is currently a 2GB limit for all CLR objects, no matter what OS
you are running on 32 / 64 bit.

the sentence you have such a big problem with comes from this page
http://msdn2.microsoft.com/en-us/library/ms241064(VS.80).aspx

So i guess you should ask MS to change the documentation if this is wrong

And if we are talking about Trolls well i guess you would make a good
candidate as you also did the last time we encountered

FYI

in both postings i made ( with the authorative links ) the only 2 sentences
that were mine were these 2

Please not the following even on a 64 bit system the object limit is 2 GB
however if the system has enough ram you can alocate multiple objects of 2gb

On a 32 bit system you cannot allocate full 2 gb so there sure is an
advantage to have a 64 bit system and to compile in 64 bit modus



regards

Michel Posseth




"Robert" <no@xxxxxxxx> schreef in bericht
news:O7R4gw3zHHA.5884@xxxxxxxxxxxxxxxxxxxxxxx
Sigh.. FFS... Here we go AGAIN.

there is currently a 2GB limit for all CLR objects, no matter what OS
you are running on 32 / 64 bit.

This is just plain WRONG.


By the way, your canned response is just as wrong this time as it was one
month ago when I corrected your mistakes:
http://groups.google.ca/group/microsoft.public.dotnet.languages.vb/browse_thread/thread/1e9765058791fa4a/9dfe1aff08a1da1f?lnk=st&q=Michel+Posseth+%5BMCP%5D+object+size&rnum=7#

You are either a masochist, or have a poor memory.. Hmm I see a pattern
here -
problems with memory limits..


http://msdn2.microsoft.com/en-us/library/ms241064(VS.80).aspx

We already did this. This horse is dead..

If you quote an authoritative source, DO NOT CHANGE IT. At all. EVER.
Add a comment if you must, and state this is from you, not the source.
Or start your own blog, doc site, or whatever. But quoting inaccurately
is BAD.


http://blogs.msdn.com/joshwil/archive/2005/08/10/450202.aspx

FFS - The TITLE of the article is "BigArray<T>, getting around the 2GB
array size limit"
uhmmm... To get around a 2gb "limit" would require being LARGER than 2gb,
correct?!?
You did not even understand the TITLE of the article?!? WTF?

Arrays are not objects. They are essentially value types layed out
sequentially in memory. Objects are very different. They allow you to
have
fields, properties, methods, and internal state data and other good stuff.
They certainly can be LARGER than 2gb.

Public Class Foo()
Dim a(1024*1024*2000) as byte
Dim b(1024*1024*2000) as byte
etc..

How big is this object?

First sentence of the above article: "I've received a number of
queries as to why the 64-bit version of the 2.0 .Net runtime
still has array maximum sizes limited to 2GB"

Note that this is talking about ARRAYS. Not ArrayLISTS, not OBJECTS

Further: "Differing from this are arrays of reference types
(e.g. objects, strings, class Y {}, etc.), for these arrays the actual
array will be that of a bunch of references, initially null. To initialize
the array your code will need to go through one element at a time
and create or assign an appropriate instance of the type to that array
element. The 2GB size limit for arrays applies to this array of
references, not the instances of the objects themselves"

So the size of the Instances of the ITEMS (not just the references) in the
array can be vastly LARGER THAN 2gb.

And then in the comments:
http://blogs.msdn.com/joshwil/archive/2005/08/10/450202.aspx#450213
Last sentence says "It does make one biased twoards using arrays of
primitive data types where you can instead of boxed references (e.g.
ArrayList) to avoid the significantly heavier penalties that go with that
practice on the 64-bit platform."

Which basically says for the problem at hand in this thread, the
ArrayLIST, does not suffer
from the 2gb limit. But you will burn a bunch of space on all those big
pointers.. And all the boxing
overhead, etc.


So, in summary:
1) Your information was wrong one month ago, and is still wrong.
2) Unless you read and COMPREHEND your own links, you will never
understand the issues
3) Arrays are not the same as objects and ArrayLISTs
4) This thread was about arraylists, so your response was completely OFF
TOPIC
5) Quote articles correctly.
6) Include links that support your position, not ones that have MANY
things that contradict you

Good luck with your memory issues and reading comprehension..

Have I been trolled?!?



.



Relevant Pages

  • Re: Set / List
    ... Less memory use. ... A hash has an array where it stores Entries, ... Each entry has at least two references. ...
    (comp.lang.java.programmer)
  • Re: Test if memory pointer is valid?
    ... I can see setting a new pointer initially to the address of the beginning of an array, for example, and then incrementing the pointer to address subsequent elements, but that would usually be done inside a function, where the new pointer would go out of scope at the end of the function and be reinitialized if it is called again. ... I would like to see a specific example where it is necessary to have multiple references such as this where it would be necessary to check for it having been freed. ... copies of all the TLabel references already in the form as individual ...
    (comp.lang.pascal.delphi.misc)
  • Re: Array.Resize question
    ... Only if there are no other references to those objects, ... objects that are now thown out of the array released properly by the CLI?" ... Garbage Collection only occurs when the system is low on memory. ...
    (microsoft.public.dotnet.languages.csharp)
  • Re: UBound not in Intellisense. References problem?
    ... but you can produce an array by using Value ... I wouldn't worry about it not appearing in intellisense. ... > I wonder if I have a corruption in my registration of References, ... I get UCase, UCase$, but no UBound. ...
    (microsoft.public.excel.programming)
  • Re: There is no sizeof in a managed language, right?
    ... I was trying to find how much memory is taken up by an array of ints, ... With references and managed languages, what do you use to figure this ...
    (microsoft.public.dotnet.languages.csharp)