[Mono-dev] Strange bug in System.Timers.Timer i guess
Robert Jordan
robertj at gmx.net
Thu Dec 29 09:58:13 EST 2005
gigi gogu wrote:
> Hy guys,
> I'm trying to port a windows.forms software in gtk with mono, and everything was ok until i tried to implement two timers.... That made my application crush without a reason after a while. Here is the message i received
You should use the non-multithreaded System.Windows.Forms.Timer.
Robert
> =================================================================
> Got a SIGSEGV while executing native code. This usually indicates
> a fatal error in the mono runtime or one of the native libraries
> used by your application.
> =================================================================
>
> Stacktrace:
>
> in <0x4> (wrapper managed-to-native) Gtk.Container:gtk_container_remove (intptr,
> intptr)
> in <0xffffffe3> (wrapper managed-to-native) Gtk.Container:gtk_container_remove (
> intptr,intptr)
> in <0x3b> Gtk.Container:Remove (WidgGtk.)
> in <0x75> pl_gui.myTableList:refresh ()
> in <0x13> pl_gui.myTableList:loadMese (pl_db.DB.Lists.dbListaMese)
> in <0x180> Forms.frm_Main:refreshMese ()
> in <0xa> Forms.frm_Main:on_tmrRefreshMese_Tick (object,System.Timers.ElapsedEven
> tArgs)
> in <0xffffff85> (wrapper delegate-invoke) System.MulticastDelegate:invoke_void_o
> bject_ElapsedEventArgs (object,System.Timers.ElapsedEventArgs)
> in <0x1d5> System.Timers.Timer:Callback (object)
> in <0xffffff95> (wrapper delegate-invoke) System.MulticastDelegate:invoke_void_o
> bject (object)
> in <0xf061a8a> (wrapper runtime-invoke) System.Object:runtime_invoke_void_object
> (object,intptr,intptr,intptr)
>
> This application has requested the Runtime to terminate it in an unusual way.
> Please contact the application's support team for more information.
>
> Practicaly, the timer does an refresh on a component on a specified interval... that means it removes all widgets inside that component and add them again (updated from a database); The code for this is (if it matthers):
>
> private void refresh()
> {
> int nr = this.Children.Length;
> for(int i=nr-1; i>=0; i--){
> Widget w=this.Children[i];
> try{
> this.Remove(w);
> }catch(Exception ex){
> Console.WriteLine(ex.Message);
> }
> }
> Classes.gdiMasa m;
> for (int i = 0; i < lista_mese.Count; i++)
> {
> m = new Classes.gdiMasa(lista_mese.getMasa(i));
> this.Put(m,m.db_masa.pozX,m.db_masa.pozY);
> m.myClick +=ev_mese;
> }
> }
>
>
> ---------------------------------
> Yahoo! Photos
> Ring in the New Year with Photo Calendars. Add photos, events, holidays, whatever.
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> 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