[Mono-bugs] [Bug 528833] New: Threadpool stress test occasionally throws TypeInitializationException
bugzilla_noreply at novell.com
bugzilla_noreply at novell.com
Thu Aug 6 09:38:40 EDT 2009
http://bugzilla.novell.com/show_bug.cgi?id=528833
Summary: Threadpool stress test occasionally throws
TypeInitializationException
Classification: Mono
Product: Mono: Runtime
Version: SVN
Platform: Other
OS/Version: Other
Status: NEW
Severity: Normal
Priority: P5 - None
Component: misc
AssignedTo: mono-bugs at lists.ximian.com
ReportedBy: mprobst at novell.com
QAContact: mono-bugs at lists.ximian.com
Found By: ---
The following program occasionally (once every 70 runs or so) throws a
TypeInitializationException:
Unhandled Exception: System.TypeInitializationException: An exception was
thrown by the type initializer for System.IO.StreamWriter --->
System.Threading.ThreadAbortException: Thread was being aborted
at System.IO.StreamWriter..cctor () [0x00000]
--- End of inner exception stack trace ---
at System.IO.UnexceptionalStreamWriter..ctor (System.IO.Stream stream,
System.Text.Encoding encoding) [0x00000]
at (wrapper remoting-invoke-with-check)
System.IO.UnexceptionalStreamWriter:.ctor
(System.IO.Stream,System.Text.Encoding)
at System.Console..cctor () [0x00000]
The program:
using System;
using System.Threading;
using System.Runtime.Remoting;
public class Test : MarshalByRefObject {
public Thread thread;
public String str;
public static int fib (int n) {
if (n <= 1)
return 1;
return fib (n - 1) + fib (n - 2);
}
void work (Object threadContext) {
Console.WriteLine ("pool " + fib (15));
}
void queueItems () {
for (;;)
ThreadPool.QueueUserWorkItem (work, null);
}
public void startThread () {
Thread thread = new Thread (new ThreadStart (queueItems));
thread.Start ();
}
}
public class main {
public static int Main (string [] args) {
AppDomain domain = AppDomain.CreateDomain ("newdomain");
Test otherTest = (Test) domain.CreateInstanceAndUnwrap (typeof
(Test).Assembly.FullName, typeof (Test).FullName);
otherTest.startThread ();
Console.WriteLine ("main " + Test.fib (20));
AppDomain.Unload (domain);
GC.Collect ();
GC.WaitForPendingFinalizers ();
return 0;
}
}
--
Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the mono-bugs
mailing list