Tue May 13 15:34:29 CEST 2003 Paolo Molaro <lupus@ximian.com>
[mono.git] / mcs / class / corlib / System.Threading / ChangeLog
1
2 Tue May 13 15:34:29 CEST 2003 Paolo Molaro <lupus@ximian.com>
3
4         * Thread.cs: added missing field used by the runtime and
5         a new field to support thread-static data.
6
7 2003-04-17  Pedro Martínez Juliá  <yoros@wanadoo.es>
8
9         * Timer.cs: Change the position of two lines because they were
10         before the "if" that ensures the integrity. After this, the first of
11         that two lines was producing a NullReferenceException.
12
13 2003-04-09  Dick Porter  <dick@ximian.com>
14
15         * Thread.cs: Make sure a reference to the ThreadStart delegate is
16         held.  There's no telling how long it will be before
17         Thread.Start() is called, and GC might destroy the delegate.
18         Thread() and Start() need to be rewritten so that the runtime
19         creates the new thread when Start() is called, which will simplify
20         the code a great deal.
21
22 2003-03-20  Miguel de Icaza  <miguel@ximian.com>
23
24         * Thread.cs (CurrentCuluture): use the invaraint culture instead
25         of "" for the current_culture setting.
26
27 2003-03-25  Zoltan Varga  <vargaz@freemail.hu>
28
29         * Thread.cs: Fix visibility of ResetAbort().
30
31 2003-03-18  Dick Porter  <dick@ximian.com>
32
33         * Thread.cs: Keep the thread state updated in all the places that
34         require it.  (Suspend, Resume and Interrupt not handled yet)
35
36 2003-03-03  Lluis Sanchez Gual <lluis@ideary.com>
37
38         * Thread.cs: Changed implementation of CurrentContext, adapted to the changes
39           in the runtime.
40
41 2003-02-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
42
43         * Thread.cs: implemented CurrentContext.
44
45 2003-02-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
46
47         * Thread.cs: made the thread_id for the current thread accesible through
48         an internal property.  
49
50 2003-02-17  Dick Porter  <dick@ximian.com>
51
52         * Thread.cs: Added the Start semaphore field to the class.  Update
53         the thread state after Start() has returned, not before.
54
55 2003-02-13  Zoltan Varga  <vargaz@freemail.hu>
56
57         * Thread.cs (Sleep): Timeout.Infinite is a value argument.
58
59 2003-02-11  Dick Porter  <dick@ximian.com>
60
61         * Monitor.cs: Infinite wait is Infinite, not 0 ms
62
63 2003-02-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
64
65         * Thread.cs: fixed bug #37759.
66
67 2003-02-07  Patrik Torstensson
68
69         * Timer.cs: Set the Background thread flag for the timer thread
70
71 2003-02-05  Patrik Torstensson
72
73         * ThreadPool.cs: Reformated and fixed issue that made all thread exit the pool. 
74
75 2003-02-04  Lluis Sanchez Gual <lluis@ideary.com>
76
77         * ThreadPool.cs: Implemented RegisterWaitForSingleObject methods.
78
79 Tue Jan 28 17:55:59 CET 2003 Paolo Molaro <lupus@ximian.com>
80
81         * Thread.cs: delay-init datastorehash.
82
83 2003-01-10  Patrik Torstensson  <totte@race-x-change.com>
84
85         * ThreadPool.cs: Temporary removed the usage of monitor thread, implemented a 
86                     model more equal to the MS one.
87
88 2002-12-10  Dick Porter  <dick@ximian.com>
89
90         * Monitor.cs:
91         * Thread.cs:
92         * ThreadPool.cs:
93         * Timer.cs:
94         * WaitHandle.cs: Use TotalMilliseconds to convert a TimeSpan to
95         ms, not Milliseconds.
96
97 2002-12-07  Martin Baulig  <martin@ximian.com>
98
99         * Timer.cs: Make it actually work; now it no longer sets your
100         application on fire if you use a zero periode and Timer.Change()
101         actually works.
102
103 2002-11-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
104
105         * Timer.cs: implemented more stuff. It works now.
106
107 2002-10-25  Zoltan Varga  <vargaz@freemail.hu>
108
109         * Thread.cs: Implement GetDomain() and GetDomainID().
110
111 2002-10-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
112
113         * ThreadPool.cs: now the monitor thread is not sleeping and checking if
114         more worker threads needed. It waits on _DataInQueue. If (and only if)
115         there's data in the queue it checks if more worker threads needed and
116         then sleeps 0.5s before waiting for queued data again.
117
118 2002-09-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
119
120         * ThreadPool.cs: set IsThreadPoolThread before starting the worker.
121
122 2002-09-11  Dick Porter  <dick@ximian.com>
123
124         * Mutex.cs: 
125         * ManualResetEvent.cs: 
126         * AutoResetEvent.cs: Use the WaitHandle.Handle property instead of
127         the private field
128
129         * WaitHandle.cs: Hide the os_handle field and the WaitOne_internal
130         method
131
132 2002-09-03  Dick Porter  <dick@ximian.com>
133
134         * Thread.cs: Added thread ID field
135
136 2002-08-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
137
138         * WaitHandle.cs: IDisposable fixes.
139
140 2002-08-14  Dick Porter  <dick@ximian.com>
141
142         * Thread.cs: Make CurrentUICulture act the same as CurrentCulture
143         for now.
144
145 2002-08-12  Dietmar Maurer  <dietmar@ximian.com>
146
147         * ThreadAbortException.cs: impl. ExceptionState property.
148
149         * Thread.cs: moved all instance variables to the start of the
150         class. added support for Thread::Abort()
151
152 2002-04-30  Dick Porter  <dick@ximian.com>
153
154         * Thread.cs: If LocalDataStoreSlot already has data set, remove it
155         before adding a new one.
156
157         Use the Thread object destructor to tell the runtime to close the
158         thread handle.
159
160 2002-04-14 Patrik Torstensson <patrik.torstensson@labs2.com>
161
162         * Interlocked.cs: made all methods icalls.
163
164 2002-04-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
165
166         * IOCompletionCallback.cs: added attributes to the delegate
167         (CLSCompliant(false) and Serializable).
168
169 2002-04-14 Patrik Torstensson <patrik.torstensson@labs2.com>
170         * Thread.cs: Fixed IsThreadPoolThread to use a internal property instead of extending 
171                                  the threadstate enum.
172         * ThreadPool.cs: Now using the internal Isthreadpoolthread property
173         * ThreadState.cs: removed non-standard enum (ThreadPoolThread)
174
175 2002-04-14 Patrik Torstensson <patrik.torstensson@labs2.com>
176
177         * ThreadState.cs: Added enum for threadpool thread
178         * Thread.cs: changed the set/clr_state to be internal (used from threadpool)
179         * Thread.cs: Added IsThreadPoolThread
180         * ThreadPool.cs: Implementation of QueueUserWorkItem
181
182 Wed Feb 13 21:51:30 CET 2002 Paolo Molaro <lupus@ximian.com>
183
184         * Thread.cs: implement CurrentCulture property needed by
185         Convert.ChangeType() (used when compiling enums).
186
187 2002-01-23  Dick Porter  <dick@ximian.com>
188
189         * ManualResetEvent.cs: 
190         * AutoResetEvent.cs: Fixed DOS line endings
191
192 2002-01-22  Veronica De Santis <veron78@interfree.it>   
193         
194         * NativeEventCalls : Class that contains internal calls shared by Auto 
195                              and Manual Reset Events
196         * AutoResetEvents.cs : Added class AutoResetEvents and its implementation
197         * ManualResetEvents.cs : Added class ManualResetEvents and its implementation
198
199 2002-01-16  Veronica De Santis <veron78@interfree.it>   
200         
201         * WaitHandle.cs : Renamed handle to os_handle and make it protected
202                           instead of private.
203         * Mutex.cs : Write the System.Threading.Mutex methods ( constructors 
204                      and the ReleaseMutex)
205
206 2002-01-15  Dick Porter  <dick@ximian.com>
207
208         * WaitHandle.cs:
209         * Thread.cs: Make the runtime's idea of infinite timeouts coincide
210         with the class library's
211
212 2002-01-10  Dick Porter  <dick@ximian.com>
213
214         * WaitHandle.cs: Added checks for too many handles and null
215         handles in WaitAll() and WaitAny
216         
217
218 2002-01-05  Ravi Pratap  <ravi@ximian.com>
219
220         * AutoResetEvent.cs, ManualResetEvent.cs, Monitor.cs : MonoTODO
221         decoration.
222
223         * Mutex.cs, Overlapped.cs, ReaderWriterLock.cs, RegisteredWaitHandle.cs,
224         Thread.cs, ThreadAbortException.cs, ThreadPool.cs, Timer.cs, WaitHandler.cs : Ditto.
225
226 2001-12-11  Dick Porter  <dick@ximian.com>
227
228         * WaitHandle.cs: Implemented WaitAll(), WaitAny() and WaitOne() as
229         internal calls.
230
231 2001-11-26  Dick Porter  <dick@ximian.com>
232
233         * Thread.cs: DataSlot uses a single system TLS slot, and a
234         hashtable per thread.  Some minor changes to reflect the new
235         internal calls using the new IO library, and the newly-supported
236         bool returns from internal calls.
237
238         * Monitor.cs: Use bool returns from internal calls now they are
239         supported by the runtime.  Coalesce enter with the try_enter
240         internal call.
241
242 Wed Nov 14 17:06:18 CET 2001 Paolo Molaro <lupus@ximian.com>
243
244         * Overlapped.cs, ThreadPool.cs, Timer.cs: CLSCompliant updates.
245
246 2001-10-03  Dick Porter  <dick@ximian.com>
247
248         * Monitor.cs: Implemented all methods except the two Wait()
249         methods that take boolean parameters
250
251 2001-09-28  Dick Porter  <dick@ximian.com>
252
253         * Thread.cs: Implemented AllocateDataSlot(),
254         AllocateNamedDataSlot(), FreeNamedDataSlot(), GetData(),
255         GetNamedDataSlot(), SetData(), IsBackground.  Reworked Thread()
256         and Start() to avoid a race condition. Added thread-safe state
257         changing private operations.
258
259         * Monitor.cs: Comment out the GetType() calls because it isn't implemented yet
260
261 2001-09-25  Dick Porter  <dick@ximian.com>
262
263         * Thread.cs: Implement Join and timed Join, set correct state
264         around Start, Join and Sleep calls, implement IsAlive and
265         ThreadState properties.
266
267         * ThreadState.cs (Threading): Added StopRequested,
268         SuspendRequested, Suspended values
269
270 2001-09-23  Dick Porter  <dick@ximian.com>
271
272         * Thread.cs: Implemented CurrentThread and Sleep (both versions)
273         with internal calls, and Name.
274
275 2001-09-21  Dick Porter  <dick@ximian.com>
276
277         * Thread.cs: Implement Thread(ThreadStart) constructor and Start()
278         with an internal call
279
280         * WaitHandle.cs: Close calls Dispose(false)
281
282 2001-09-13  Dick Porter  <dick@ximian.com>
283
284         * ApartmentState.cs (Threading): Set the correct enum values
285
286 2001-09-13  Dick Porter  <dick@ximian.com>
287
288         * ApartmentState.cs, AutoResetEvent.cs, IOCompletionCallback.cs,
289         Interlocked.cs, LockCookie.cs, ManualResetEvent.cs, Monitor.cs,
290         Mutex.cs, NativeOverlapped.cs, Overlapped.cs, ReaderWriterLock.cs,
291         RegisteredWaitHandle.cs, SynchronizationLockException.cs,
292         Thread.cs, ThreadAbortException.cs, ThreadInterruptedException.cs,
293         ThreadPool.cs, ThreadStart.cs, ThreadStateException.cs,
294         Timeout.cs, Timer.cs, TimerCallback.cs, WaitCallback.cs,
295         WaitHandle.cs, WaitOrTimerCallback.cs: System.Threading class
296         stubs.
297         
298 2001-07-18  Michael Lambert <michaellambert@email.com>
299
300         * ThreadPriority.cs, ThreadState.cs: Add.