[Mono-bugs] [Bug 75899][Maj] New - GC freed memory some threads were working with

bugzilla-daemon at bugzilla.ximian.com bugzilla-daemon at bugzilla.ximian.com
Wed Aug 24 19:47:42 EDT 2005


Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.

Changed by jan.oravec at 6com.sk.

http://bugzilla.ximian.com/show_bug.cgi?id=75899

--- shadow/75899	2005-08-24 19:47:42.000000000 -0400
+++ shadow/75899.tmp.22753	2005-08-24 19:47:42.000000000 -0400
@@ -0,0 +1,69 @@
+Bug#: 75899
+Product: Mono: Runtime
+Version: 1.1
+OS: 
+OS Details: 
+Status: NEW   
+Resolution: 
+Severity: 
+Priority: Major
+Component: GC
+AssignedTo: mono-bugs at ximian.com                            
+ReportedBy: jan.oravec at 6com.sk               
+QAContact: mono-bugs at ximian.com
+TargetMilestone: ---
+URL: 
+Cc: 
+Summary: GC freed memory some threads were working with
+
+Description of Problem:
+
+Assume the following code:
+
+using System;
+using System.Threading;
+
+public class TimerTest{
+   static void foo(object state)
+   {
+     Console.WriteLine("foo");
+   }
+
+   public static void Main(){
+     Timer[] q= new Timer[100];
+     for(int i=0; i<100; ++i)
+       q[i]=new Timer(new TimerCallback(foo), null,
+TimeSpan.FromSeconds(5), TimeSpan.FromSeconds(5));
+     
+     Thread.Sleep(6000);
+   }
+}
+
+
+This happens:
+
+...
+foo
+foo
+(1 second pause)
+*** glibc detected *** double free or corruption (!prev):
+0x00000000008d0b10 ***
+Aborted
+
+It appears that after exiting main thread, GC tries to collect memory which
+is still in use by other threads.
+
+
+Steps to reproduce the problem:
+1. run above code
+
+Actual Results:
+crash on exit
+
+
+Expected Results:
+clean exit
+
+
+How often does this happen? 
+always


More information about the mono-bugs mailing list