[Mono-dev] set culture uses serialization?

Zoltan Varga vargaz at gmail.com
Thu Jan 3 09:49:51 EST 2008


Hi,

The current culture is shared between appdomains so the runtime stores it in
serialized form.

                      Zoltan

On Jan 3, 2008 8:21 AM, Steve Bjorg <steveb at mindtouch.com> wrote:
>
> I ran into the following error today on our system (note: I truncated the
> stack for legibility).  The interesting part is in bold (prefixed by * in
> case the formatting got lost)
>
>
> Too many heap sections: Increase MAXHINCR or MAX_HEAP_SECTS
> Stacktrace:
>   at (wrapper managed-to-native)
> System.Object.__icall_wrapper_mono_array_new_specific (intptr,int) <0x00004>
>   at (wrapper managed-to-native)
> System.Object.__icall_wrapper_mono_array_new_specific (intptr,int)
> <0xffffffff>
>   at System.IO.MemoryStream.set_Capacity (int) <0x0004c>
>   at System.IO.MemoryStream.Write (byte[],int,int) <0x0007a>
>   at System.IO.BinaryWriter.Write (string) <0x000c8>
>   at GregorianCalendar__TypeMetadata.WriteTypeData
> (System.Runtime.Serialization.Formatters.Binary.ObjectWriter,System.IO.BinaryWriter,bool)
> <0x0001f>
>   at System.Runtime.Serialization.Formatters.Binary.ObjectWriter.WriteObject
> (System.IO.BinaryWriter,long,object) <0x0020d>
>   at
> System.Runtime.Serialization.Formatters.Binary.ObjectWriter.WriteObjectInstance
> (System.IO.BinaryWriter,object,bool) <0x0014c>
>   at
> System.Runtime.Serialization.Formatters.Binary.ObjectWriter.WriteQueuedObjects
> (System.IO.BinaryWriter) <0x0002d>
>   at
> System.Runtime.Serialization.Formatters.Binary.ObjectWriter.WriteObjectGraph
> (System.IO.BinaryWriter,object,System.Runtime.Remoting.Messaging.Header[])
> <0x0003a>
>   at
> System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Serialize
> (System.IO.Stream,object,System.Runtime.Remoting.Messaging.Header[])
> <0x00206>
> *  at
> System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Serialize
> (System.IO.Stream,object) <0x00015>
> *  at System.Threading.Thread.set_CurrentUICulture
> (System.Globalization.CultureInfo) <0x00056>
>   at MindTouch.Dream.Task.Execute
> (System.VoidHandler,MindTouch.Dream.TaskBehavior) <0x00093>
>
> The odd thing is that it appears setting the culture invokes the
> serializer!?!  Our async execution framework sets the culture for all
> asynchronous operations.  Question is, why is it using serialization though?
> Can I avoid this somehow and still set the culture?  Thx.
>
>
> - Steve
>
> --------------
> Steve G. Bjorg
> http://wiki.mindtouch.com
> http://wiki.opengarden.org
>
>
> _______________________________________________
> Mono-devel-list mailing list
> Mono-devel-list at lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/mono-devel-list
>
>



More information about the Mono-devel-list mailing list