updating to the latest module.
[mono.git] / mono / tests / cas / threads / README
1 The basic idea of the tests are to try to exit the running process by calling
2 Environment.Exit(int). The entry point, Main, denies UnmanagedCode from being
3 executed. UnmanagedCode is required to call Environment.Exit(int). Then we try
4 to call Environment.Exit(int) from other threads which "should" have inherited
5 the restriction from the "main" (i.e. original) thread.
6
7 This security stack "inheritance" is called "stack propagation".
8
9
10 * thread1.cs    Deny unmanaged code before creating the thread object.
11 * thread2.cs    Deny unmanaged code after creating the thread object but 
12                 before calling Start.
13 * thread3.cs    Deny unmanaged code after creating the thread object and 
14                 calling Start. 
15
16 * timer1.cs:    Use System.Threading.Timer (Thread.Start) to test stack 
17                 propagation.
18 * timer2.cs:    Use System.Timers.Timer (ThreadPool.QueueUserWorkItem) to test
19                 stack propagation.