Does anyone know the maximum size of a struct that can be used in the
Framework without having these issues?

Thanks,
Mike


On 6/21/07, Mike Andrews <[EMAIL PROTECTED]> wrote:

Yes.
And it makes sense now.  I just wasn't thinking along those lines until
the MS guy said something about it and I had time to think about it for a
while.
It's always something.  LOL.
I didn't equate the GC having issues with debugger and the size of the
struct.

 On 6/21/07, Paul van Brenk <[EMAIL PROTECTED]> wrote:
>
> Uh.. A struct is always passed by value (ie. Copied). A class is passed
> by reference (just the pointer)... So yeah, I can imagine copying a struct
> with the size you describe could be a problem for the GC.
>
> -----Original Message-----
> From: Discussion of advanced .NET topics. [mailto:
> [EMAIL PROTECTED] On Behalf Of Mike Andrews
> Sent: Thursday, June 21, 2007 17:47
> To: ADVANCED-DOTNET@DISCUSS.DEVELOP.COM
> Subject: Re: [ADVANCED-DOTNET] PRB: Cannot evaluate expression because a
> thread is stopped at a point where garbage collection is impossible...
>
> I think I've discovered the issue and after talking with a Microsoft
> technical support rep.
> The rep didn't have an answer, but made a reference to the number of
> parameters which led me to look further.
>
> The issue seems to be the total size of all parameters passed in to the
> method.
> The "details" parameter in the _groups.Load(...) method is a struct.
> The struct itself is quite large in size with about 30 fields that
> contain
> DataTables, DataRelations and DataRows.
> When I converted the struct to a class, the problem disappeared.  It
> seems
> to be that the struct cannot be passed byval like a class when the size
> of
> the struct is greater than some [unknown] value.
>
> A very weird problem indeed.
>
> Thanks,
> Mike
>
>
> On 6/21/07, J. Merrill <[EMAIL PROTECTED]> wrote:
> >
> > Well, the class referenced by _groups must have a method called
> > Load.  What's in it?  Have you tried commenting out different lines in
> the
> > Load method to see what no longer "keeps the ability to display values
> > working"?
> >
> > At 04:33 PM 6/20/2007, Mike Andrews wrote (in part)
> >
> > > private void Load(Guid guid, MarType type, DateTime startDate,
> > >TransactionContext transaction){
> > >   //Nothing is readable in here except intrinsic data types
> > >   ...
> > >   //This is the line, that when commented out, keeps the ability to
> > >display values working
> > >   _groups.Load(details, type, startDate);
> > > }
> > >
> > >}
> > >
> > >_groups is a variable that references a custom class (that inherits
> > directly
> > >from System.Object) that has no "special" functionality in it
> whatsoever.
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> > J. Merrill / Analytical Software Corp
> >
> > ===================================
> > This list is hosted by DevelopMentor(r)  http://www.develop.com
> >
> > View archives and manage your subscription(s) at
> > http://discuss.develop.com
> >
>
> ===================================
> This list is hosted by DevelopMentor(r)  http://www.develop.com
>
> View archives and manage your subscription(s) at
> http://discuss.develop.com
>
> ===================================
> This list is hosted by DevelopMentor(r)  http://www.develop.com
>
> View archives and manage your subscription(s) at
> http://discuss.develop.com
>



===================================
This list is hosted by DevelopMentorĀ®  http://www.develop.com

View archives and manage your subscription(s) at http://discuss.develop.com

Reply via email to