Thu Jan 13 18:15:32 CET 2005 Paolo Molaro <lupus@ximian.com>
[mono.git] / mcs / class / corlib / System.Threading / ChangeLog
1
2 Thu Jan 13 18:15:32 CET 2005 Paolo Molaro <lupus@ximian.com>
3
4         * Thread.cs: implement stacksize and parameterized
5         start functionality (requires matching runtime).
6
7 2005-01-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
8
9         * ThreadAbortException.cs: added private serialization .ctor.
10
11 2004-12-20  Sebastien Pouliot  <sebastien@ximian.com>
12
13         * CompressedStack.cs: Implemented most todo so it's usable for CAS.
14         * CompressedStackSwitcher.cs: Implemented most todo.
15         * Thread.cs: Implement support for getting/setting CompressedStack.
16
17 2004-12-15  Zoltan Varga  <vargaz@freemail.hu>
18
19         * Thread.cs: Change type of culture_info and ui_culture_info to 
20         IntPtr. Implement correct culture handling for the UI culture as
21         well.
22
23 2004-12-14  Zoltan Varga  <vargaz@freemail.hu>
24
25         * Thread.cs: Optimize CurrentCulture to avoid initializing the
26         serialization infrastructure in the common case when the culture is
27         not set explicitly.
28
29 2004-12-06  Zoltan Varga  <vargaz@freemail.hu>
30
31         * Thread.cs: Add new fields 'serialized_culture_info{_len}'.
32         
33         * Thread.cs (CurrentCulture): Fix leaking of culture info objects 
34         across appdomains. Partially fixes #50049.
35
36 2004-12-05  Miguel de Icaza  <miguel@ximian.com>
37
38         * AutoResetEvent.cs (Set, Reset): If we are disposed, throw a
39         ObjectDisposedEvent, helped track the WebConnection destructor
40         issue. 
41
42 2004-09-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
43
44         * Timer.cs: don't invoke the callback twice when the timer changes.
45         Fixes bug #66116.
46
47 2004-09-08  Marek Safar  <marek.safar@seznam.cz>
48
49         * Interlocked.cs: Class is static in NET_2_0.
50
51 2004-09-04  Sebastien Pouliot  <sebastien@ximian.com>
52
53         * Thread.cs: Changed an imperative security demand to declarative
54         (unsupported) so it doesn't (for now) call the security runtime.
55
56 2004-08-20  Sebastien Pouliot  <sebastien@ximian.com>
57
58         * Thread.cs: Added Fx 2.0 properties/methods/attributes.
59
60 2004-08-12  Sebastien Pouliot  <sebastien@ximian.com>
61
62         * CompressedStackSwitcher.cs: Added missing [ComVisible] and 
63         [ReliabilityContract] attributes.
64         * ExecutionContext.cs: Added missing [ComVisible] and 
65         [Serializable] attributes.
66         * HostExecutionContext.cs: Added missing [ComVisible] attribute.
67         * HostExecutionContextManager.cs: Added missing [ComVisible] and 
68         [ReliabilityContract] attributes.
69         * HostExecutionContextSwitcher.cs: Added missing Equals and 
70         GetHashCode methods and [ComVisible] and [ReliabilityContract] attrs.
71         * ParameterizedThreadStart.cs: New delegate in NET_2_0.
72         * SendOrPostCallback.cs: Added missing [ComVisible] attribute.
73         * SynchronizationContext.cs: Added new (2.0 beta1) methods Copy and
74         WaitHelper. Added missing [ComVisible] and [ReliabilityContract] attrs.
75         * SynchronizationContextSwitcher.cs: Added missing [ComVisible] and 
76         [ReliabilityContract] attributes.
77
78 2004-08-08  Sebastien Pouliot  <sebastien@ximian.com>
79
80         * HostExecutionContext.cs: Fx 2.0 stub required for AppDomain.
81         * HostExecutionContextManager.cs: Fx 2.0 stub required for AppDomain.
82         * HostExecutionContextSwitcher.cs: Fx 2.0 stub required for AppDomain.
83
84 2004-08-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
85
86         * Timer.cs: don't invoke the callback if the period changes before the
87         due time. Fixes bug #62421.
88
89 2004-07-27  Lluis Sanchez Gual  <lluis@novell.com>
90
91         * ExecutionContext.cs, ExecutionContextSwitcher.cs, 
92           SynchronizationContext.cs, SynchronizationContextSwitcher.cs: Added
93           2.0 stubs.
94
95 2004-07-15  Dick Porter  <dick@ximian.com>
96
97         * Thread.cs: Hold a lock in GetNamedDataSlot.  Fixes bug 61582,
98         based on patch by Sébastien Robitaille
99         (sebastien.robitaille@croesus.com).  Also fix instances of
100         lock(typeof(Thread)) to lock a private object instead.
101
102 2004-07-14  Sebastien Pouliot  <sebastien@ximian.com>
103
104         * AsyncFlowControl.cs: New structure in Fx 2.0 required in 
105         System.Security namespace.
106         * CompressedStackSwitcher.cs: New structure in Fx 2.0 required in 
107         System.Security namespace.
108         * ContextCallback.cs: New delegate in Fx 2.0 required in 
109         System.Security namespace.
110         * CompressedStack.cs: Updated API for NET_2_0 profile.
111
112 2004-07-10  Lluis Sanchez Gual  <lluis@ximian.com>
113
114         * SendOrPostCallback.cs: New delegate.
115
116 2004-06-24  Dick Porter  <dick@ximian.com>
117
118         * Mutex.cs: Implement the createdNew parameter
119
120 2004-06-15  Gert Driesen <drieseng@users.sourceforge.net>
121
122         * Thread.cs: changed return type of VolatileRead to UIntPtr
123         * ThreadPool.cs: set return type of SetMinThreads to bool
124
125 2004-06-15  Lluis Sanchez Gual  <lluis@ximian.com>
126
127         * Thread.cs: Added new fields to keep sync with MonoThread.
128           Removed state changes in Sleep and Join. The state change is now done
129           in the icall. For accessing to internal fields lock with synch_lock
130           instead of this, which can be a source of deadlocks.
131
132 2004-06-15  Lluis Sanchez Gual  <lluis@ximian.com>
133
134         * Timer.cs: Don't abort the thread if Dispose() is called from the runner
135           thread.
136
137 2004-06-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
138
139         * Thread.cs:
140         (CurrentPrincipal): lock on CurrentThread, not typeof (Thread) and set
141         the thread IPrincipal if we get it from the AppDomain.
142
143 2004-06-09  Gert Driesen <drieseng@users.sourceforge.net>
144
145         * CompressedStack.cs: Added finalizer to match public API of
146         MS.NET
147
148 2004-05-19  Lluis Sanchez Gual <lluis@ximian.com>
149
150         * Thread.cs: Some fixes in Abort. Implemented Suspend and Resume.
151           Added internal interruption_requested field.
152
153 2004-05-13  Sebastien Pouliot  <sebastien@ximian.com>
154
155         * CompressedStack.cs: Added an internal constructor so a default one
156         doesn't appear with corcompare.
157         * Thread.cs: Added missing MemoryBarrier (only for 1.1) and SpinWait to please
158         corcompare. Both throw a NotImplementedException.
159         * ThreadPool.cs: Added missing UnsafeRegisterWaitForSingleObject methods (4
160         overloads) to please corcompare. All throw a NotImplementedException.
161
162 2004-05-12  Zoltan Varga  <vargaz@freemail.hu>
163
164         * CompressedStack.cs: New file.
165
166 2004-04-15  Lluis Sanchez Gual <lluis@ximian.com>
167
168         * ThreadPool.cs: Added GetMinThreads and SetMinThreads.
169         * Timer.cs: In Change, return false if the timer has been disposed.
170         In Dispose, notify the WaitHandle.
171
172 2004-04-11  Lluis Sanchez Gual <lluis@ximian.com>
173
174         * ReaderWriterLock.cs: More fixes: never wait where acquiring a reader lock
175           if the thread already has the lock. Added readyWaitingReaders variable to
176           keep track of threads ready to get the reader lock.
177
178 2004-04-11  Lluis Sanchez Gual <lluis@ximian.com>
179
180         * LockQueue.cs: Moved lockCount change inside the rwlock lock. Removed
181           lock(this) when entering the rwlock to avoid a deadlock.
182         * ReaderWriterLock.cs: In AcquireWriterLock, queue the thread if the queue
183           is not empty (even if state==0).
184
185 2004-04-09  Zoltan Varga  <vargaz@freemail.hu>
186
187         * Timer.cs: Call the callback immediately if dueTime is 0. Fixes
188         #56728.
189
190 2004-04-08  Jackson Harper  <jackson@ximian.com>
191
192         * ReaderWriterLock.cs: Fix tyop
193         
194 2004-04-08  Lluis Sanchez Gual <lluis@ximian.com>
195
196         * ReaderWriterLock.cs: Changed some methods to private.
197         * WaitHandle.cs: In Wait methods, release the synchronization context when 
198           exitContext is true.
199
200 2004-04-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
201
202         * Timer.cs: call Abort on the Runner instance too.
203
204 2004-04-07  Jackson Harper  <jackson@ximian.com>
205
206         * Thread.cs: Use new culture info method for constructing the
207         current culture.
208         
209 2004-04-07  Lluis Sanchez Gual <lluis@ximian.com>
210
211         * ReaderWriterLock.cs: When a thread holds a writer lock, a call to
212           AcquireReaderLock works like a call to AcquireWriterLock.
213
214 2004-04-06  Lluis Sanchez Gual <lluis@ximian.com>
215
216         * Monitor.cs: In Wait(), release the synchronization context when 
217           exitContext is true.
218
219 2004-04-06  Lluis Sanchez Gual <lluis@ximian.com>
220
221         * LockCookie.cs: Keep in this class the count of reader or writer locks
222           for a thread, not only whether it has locks or not.
223         * LockQueue.cs: Added property for checking if a thread is waiting in
224           the queue. Wait now returns a boolean that set to false on timeout 
225           expiration.
226         * ReaderWriterLock.cs: Started fixing bugs but I had to rewrite a lot of it.
227           The main change is that now it keeps a reader lock count for each
228           thread. This is needed since methods like ReleaseLock or 
229           UpgradeToWriterLock need to return a per-thread status in LockCookie.
230           Also added support for recursive writer-lock requests.
231
232 2004-03-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
233
234         * ThreadAbortException.cs: use same HResult as MS.
235         * Timer.cs: abort the running thread when disposing the Timer. This
236         fixes NullRefs when finishing xsp.
237
238 2004-03-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
239
240         * NativeOverlapped.cs: added 2 new internal fields.
241         * Overlapped.cs: implemented, but it's not used.
242
243         * ThreadPool.cs: implemented BindHandle.
244
245 2004-03-08  Zoltan Varga  <vargaz@freemail.hu>
246
247         * Timer.cs (Dispose): Applied patch from Jaroslaw Kowalski 
248         (jaak@zd.com.pl). Fix finalization problems during appdomain unload.
249
250 2004-02-23  Jackson Harper <jackson@ximian.com>
251
252         * LockCookie.cs: Add some fields for restoring locks.
253         * ReaderWriterLock.cs: Implement
254         * LockQueue.cs: New File - used for queueing thread locks in
255         ReaderWriterLock.
256         
257 2004-02-19  Jackson Harper <jackson@ximian.com>
258
259         * Monitor.cs: Fix spelleng.
260         
261 2004-02-09  Zoltan Varga  <vargaz@freemail.hu>
262
263         * Thread.cs: Add fields added to unmanaged MonoThread here as well.
264         Fixes random errors caused by memory corruption.
265
266 2004-02-06  Zoltan Varga  <vargaz@freemail.hu>
267
268         * Thread.cs: Store the thread name in unmanaged memory, since the
269         thread object is shared between appdomains.
270
271 2004-02-05  Sebastien Pouliot  <sebastien@ximian.com>
272
273         * Thread.cs: Implemented CurrentPrincipal.
274
275 2004-01-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
276
277         * Thread.cs: delayed thread creation until Start is called. If we
278         don't do that and Start() is not called, the thread is leaked. First
279         step towards fixing bug #53078. 
280
281 2003-12-02  Dick Porter  <dick@ximian.com>
282
283         * Thread.cs: Throw InvalidOperationException if Thread.Name is
284         already set.
285
286 2003-12-01  Dick Porter  <dick@ximian.com>
287
288         * Thread.cs: Implement CurrentCulture and CurrentUICulture
289
290 2003-11-12  Miguel de Icaza  <miguel@ximian.com>
291
292         * Thread.cs: Add new VolatileRead/VolatileWrite methods from 1.1
293
294 2003-10-23  Lluis Sanchez Gual  <lluis@ximian.com>
295
296         * Thread.cs: Added ResetDataStoreStatus and RestoreDataStoreStatus
297           methods. They are used in CrossAppDomainChannel to save and restore
298           thread's local data when switching between domains.
299
300 2003-10-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
301
302         * ManualResetEvent.cs: added check for disposed.
303         * Thread.cs: no need to init this field.
304
305 2003-10-01  Zoltan Varga  <vargaz@freemail.hu>
306
307         * Thread.cs: Add locking to AllocateNamedDataSlot and 
308         FreeNamedDataSlot.
309
310 Wed Aug 20 12:01:36 CEST 2003 Paolo Molaro <lupus@ximian.com>
311
312         * Thread.cs: put all the fields at the start and add
313         more fields needed by the runtime.
314
315 2003-08-14  Lluis Sanchez Gual  <lluis@ximian.com>
316
317         * Thread.cs: SetData() method: use Hashtable.Contains to check
318           if a dataslot has been allocated (value could be null).
319
320 2003-07-23  Duncan Mak  <duncan@ximian.com>
321
322         * WaitHandle.cs (CheckDisposed): This method is not in the public
323         API, mark it as 'internal'.
324
325 2003-07-01  Dick Porter  <dick@ximian.com>
326
327         * Thread.cs: Throw an exception if thread creation failed.
328         (Better than just blowing up later.)
329
330 2003-06-27  Dietmar Maurer  <dietmar@ximian.com>
331
332         * ThreadPool.cs: use async delegate invoke.
333
334 2003-06-25  Dick Porter  <dick@ximian.com>
335
336         * WaitHandle.cs: Default handle value should be InvalidHandle, not
337         Zero.
338
339 2003-06-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
340
341         * ThreadPool.cs: correctly create a TimeSpan with provided the number of
342         milliseconds.
343
344         * WaitHandle.cs: fixes for WaitAny/All and TimeSpan.
345
346 2003-06-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
347
348         * WaitHandle.cs: checks and exceptions.
349
350 2003-06-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
351
352         * NativeEventCalls.cs: added CloseEvent_intenal.
353         * WaitHandle.cs: call CloseEvent_internal when disposing.
354
355 2003-05-31  Gonzalo Paniagua Javier <gonzalo@ximian.com>
356
357         * RegisteredWaitHandle.cs: check that the callback is not null before
358         invoking.
359
360         * ThreadPool.cs: fixed timeout -> TimeSpan conversions (closes bug
361         #43963). Queue the item before setting the handle. If there's a timeout,
362         avoid trying to Dequeue, getting the exception et al, just continue the
363         loop.
364
365 Mon May 19 09:07:45 CEST 2003 Paolo Molaro <lupus@ximian.com>
366
367         * Monitor.cs: removed test_owner, the check is already done in the
368         icall.
369
370 Tue May 13 15:34:29 CEST 2003 Paolo Molaro <lupus@ximian.com>
371
372         * Thread.cs: added missing field used by the runtime and
373         a new field to support thread-static data.
374
375 2003-04-17  Pedro Mart�ez Juli� <yoros@wanadoo.es>
376
377         * Timer.cs: Change the position of two lines because they were
378         before the "if" that ensures the integrity. After this, the first of
379         that two lines was producing a NullReferenceException.
380
381 2003-04-09  Dick Porter  <dick@ximian.com>
382
383         * Thread.cs: Make sure a reference to the ThreadStart delegate is
384         held.  There's no telling how long it will be before
385         Thread.Start() is called, and GC might destroy the delegate.
386         Thread() and Start() need to be rewritten so that the runtime
387         creates the new thread when Start() is called, which will simplify
388         the code a great deal.
389
390 2003-03-20  Miguel de Icaza  <miguel@ximian.com>
391
392         * Thread.cs (CurrentCuluture): use the invaraint culture instead
393         of "" for the current_culture setting.
394
395 2003-03-25  Zoltan Varga  <vargaz@freemail.hu>
396
397         * Thread.cs: Fix visibility of ResetAbort().
398
399 2003-03-18  Dick Porter  <dick@ximian.com>
400
401         * Thread.cs: Keep the thread state updated in all the places that
402         require it.  (Suspend, Resume and Interrupt not handled yet)
403
404 2003-03-03  Lluis Sanchez Gual <lluis@ideary.com>
405
406         * Thread.cs: Changed implementation of CurrentContext, adapted to the changes
407           in the runtime.
408
409 2003-02-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
410
411         * Thread.cs: implemented CurrentContext.
412
413 2003-02-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
414
415         * Thread.cs: made the thread_id for the current thread accesible through
416         an internal property.  
417
418 2003-02-17  Dick Porter  <dick@ximian.com>
419
420         * Thread.cs: Added the Start semaphore field to the class.  Update
421         the thread state after Start() has returned, not before.
422
423 2003-02-13  Zoltan Varga  <vargaz@freemail.hu>
424
425         * Thread.cs (Sleep): Timeout.Infinite is a value argument.
426
427 2003-02-11  Dick Porter  <dick@ximian.com>
428
429         * Monitor.cs: Infinite wait is Infinite, not 0 ms
430
431 2003-02-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
432
433         * Thread.cs: fixed bug #37759.
434
435 2003-02-07  Patrik Torstensson
436
437         * Timer.cs: Set the Background thread flag for the timer thread
438
439 2003-02-05  Patrik Torstensson
440
441         * ThreadPool.cs: Reformated and fixed issue that made all thread exit the pool. 
442
443 2003-02-04  Lluis Sanchez Gual <lluis@ideary.com>
444
445         * ThreadPool.cs: Implemented RegisterWaitForSingleObject methods.
446
447 Tue Jan 28 17:55:59 CET 2003 Paolo Molaro <lupus@ximian.com>
448
449         * Thread.cs: delay-init datastorehash.
450
451 2003-01-10  Patrik Torstensson  <totte@race-x-change.com>
452
453         * ThreadPool.cs: Temporary removed the usage of monitor thread, implemented a 
454                     model more equal to the MS one.
455
456 2002-12-10  Dick Porter  <dick@ximian.com>
457
458         * Monitor.cs:
459         * Thread.cs:
460         * ThreadPool.cs:
461         * Timer.cs:
462         * WaitHandle.cs: Use TotalMilliseconds to convert a TimeSpan to
463         ms, not Milliseconds.
464
465 2002-12-07  Martin Baulig  <martin@ximian.com>
466
467         * Timer.cs: Make it actually work; now it no longer sets your
468         application on fire if you use a zero periode and Timer.Change()
469         actually works.
470
471 2002-11-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
472
473         * Timer.cs: implemented more stuff. It works now.
474
475 2002-10-25  Zoltan Varga  <vargaz@freemail.hu>
476
477         * Thread.cs: Implement GetDomain() and GetDomainID().
478
479 2002-10-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
480
481         * ThreadPool.cs: now the monitor thread is not sleeping and checking if
482         more worker threads needed. It waits on _DataInQueue. If (and only if)
483         there's data in the queue it checks if more worker threads needed and
484         then sleeps 0.5s before waiting for queued data again.
485
486 2002-09-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
487
488         * ThreadPool.cs: set IsThreadPoolThread before starting the worker.
489
490 2002-09-11  Dick Porter  <dick@ximian.com>
491
492         * Mutex.cs: 
493         * ManualResetEvent.cs: 
494         * AutoResetEvent.cs: Use the WaitHandle.Handle property instead of
495         the private field
496
497         * WaitHandle.cs: Hide the os_handle field and the WaitOne_internal
498         method
499
500 2002-09-03  Dick Porter  <dick@ximian.com>
501
502         * Thread.cs: Added thread ID field
503
504 2002-08-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
505
506         * WaitHandle.cs: IDisposable fixes.
507
508 2002-08-14  Dick Porter  <dick@ximian.com>
509
510         * Thread.cs: Make CurrentUICulture act the same as CurrentCulture
511         for now.
512
513 2002-08-12  Dietmar Maurer  <dietmar@ximian.com>
514
515         * ThreadAbortException.cs: impl. ExceptionState property.
516
517         * Thread.cs: moved all instance variables to the start of the
518         class. added support for Thread::Abort()
519
520 2002-04-30  Dick Porter  <dick@ximian.com>
521
522         * Thread.cs: If LocalDataStoreSlot already has data set, remove it
523         before adding a new one.
524
525         Use the Thread object destructor to tell the runtime to close the
526         thread handle.
527
528 2002-04-14 Patrik Torstensson <patrik.torstensson@labs2.com>
529
530         * Interlocked.cs: made all methods icalls.
531
532 2002-04-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
533
534         * IOCompletionCallback.cs: added attributes to the delegate
535         (CLSCompliant(false) and Serializable).
536
537 2002-04-14 Patrik Torstensson <patrik.torstensson@labs2.com>
538         * Thread.cs: Fixed IsThreadPoolThread to use a internal property instead of extending 
539                                  the threadstate enum.
540         * ThreadPool.cs: Now using the internal Isthreadpoolthread property
541         * ThreadState.cs: removed non-standard enum (ThreadPoolThread)
542
543 2002-04-14 Patrik Torstensson <patrik.torstensson@labs2.com>
544
545         * ThreadState.cs: Added enum for threadpool thread
546         * Thread.cs: changed the set/clr_state to be internal (used from threadpool)
547         * Thread.cs: Added IsThreadPoolThread
548         * ThreadPool.cs: Implementation of QueueUserWorkItem
549
550 Wed Feb 13 21:51:30 CET 2002 Paolo Molaro <lupus@ximian.com>
551
552         * Thread.cs: implement CurrentCulture property needed by
553         Convert.ChangeType() (used when compiling enums).
554
555 2002-01-23  Dick Porter  <dick@ximian.com>
556
557         * ManualResetEvent.cs: 
558         * AutoResetEvent.cs: Fixed DOS line endings
559
560 2002-01-22  Veronica De Santis <veron78@interfree.it>   
561         
562         * NativeEventCalls : Class that contains internal calls shared by Auto 
563                              and Manual Reset Events
564         * AutoResetEvents.cs : Added class AutoResetEvents and its implementation
565         * ManualResetEvents.cs : Added class ManualResetEvents and its implementation
566
567 2002-01-16  Veronica De Santis <veron78@interfree.it>   
568         
569         * WaitHandle.cs : Renamed handle to os_handle and make it protected
570                           instead of private.
571         * Mutex.cs : Write the System.Threading.Mutex methods ( constructors 
572                      and the ReleaseMutex)
573
574 2002-01-15  Dick Porter  <dick@ximian.com>
575
576         * WaitHandle.cs:
577         * Thread.cs: Make the runtime's idea of infinite timeouts coincide
578         with the class library's
579
580 2002-01-10  Dick Porter  <dick@ximian.com>
581
582         * WaitHandle.cs: Added checks for too many handles and null
583         handles in WaitAll() and WaitAny
584         
585
586 2002-01-05  Ravi Pratap  <ravi@ximian.com>
587
588         * AutoResetEvent.cs, ManualResetEvent.cs, Monitor.cs : MonoTODO
589         decoration.
590
591         * Mutex.cs, Overlapped.cs, ReaderWriterLock.cs, RegisteredWaitHandle.cs,
592         Thread.cs, ThreadAbortException.cs, ThreadPool.cs, Timer.cs, WaitHandler.cs : Ditto.
593
594 2001-12-11  Dick Porter  <dick@ximian.com>
595
596         * WaitHandle.cs: Implemented WaitAll(), WaitAny() and WaitOne() as
597         internal calls.
598
599 2001-11-26  Dick Porter  <dick@ximian.com>
600
601         * Thread.cs: DataSlot uses a single system TLS slot, and a
602         hashtable per thread.  Some minor changes to reflect the new
603         internal calls using the new IO library, and the newly-supported
604         bool returns from internal calls.
605
606         * Monitor.cs: Use bool returns from internal calls now they are
607         supported by the runtime.  Coalesce enter with the try_enter
608         internal call.
609
610 Wed Nov 14 17:06:18 CET 2001 Paolo Molaro <lupus@ximian.com>
611
612         * Overlapped.cs, ThreadPool.cs, Timer.cs: CLSCompliant updates.
613
614 2001-10-03  Dick Porter  <dick@ximian.com>
615
616         * Monitor.cs: Implemented all methods except the two Wait()
617         methods that take boolean parameters
618
619 2001-09-28  Dick Porter  <dick@ximian.com>
620
621         * Thread.cs: Implemented AllocateDataSlot(),
622         AllocateNamedDataSlot(), FreeNamedDataSlot(), GetData(),
623         GetNamedDataSlot(), SetData(), IsBackground.  Reworked Thread()
624         and Start() to avoid a race condition. Added thread-safe state
625         changing private operations.
626
627         * Monitor.cs: Comment out the GetType() calls because it isn't implemented yet
628
629 2001-09-25  Dick Porter  <dick@ximian.com>
630
631         * Thread.cs: Implement Join and timed Join, set correct state
632         around Start, Join and Sleep calls, implement IsAlive and
633         ThreadState properties.
634
635         * ThreadState.cs (Threading): Added StopRequested,
636         SuspendRequested, Suspended values
637
638 2001-09-23  Dick Porter  <dick@ximian.com>
639
640         * Thread.cs: Implemented CurrentThread and Sleep (both versions)
641         with internal calls, and Name.
642
643 2001-09-21  Dick Porter  <dick@ximian.com>
644
645         * Thread.cs: Implement Thread(ThreadStart) constructor and Start()
646         with an internal call
647
648         * WaitHandle.cs: Close calls Dispose(false)
649
650 2001-09-13  Dick Porter  <dick@ximian.com>
651
652         * ApartmentState.cs (Threading): Set the correct enum values
653
654 2001-09-13  Dick Porter  <dick@ximian.com>
655
656         * ApartmentState.cs, AutoResetEvent.cs, IOCompletionCallback.cs,
657         Interlocked.cs, LockCookie.cs, ManualResetEvent.cs, Monitor.cs,
658         Mutex.cs, NativeOverlapped.cs, Overlapped.cs, ReaderWriterLock.cs,
659         RegisteredWaitHandle.cs, SynchronizationLockException.cs,
660         Thread.cs, ThreadAbortException.cs, ThreadInterruptedException.cs,
661         ThreadPool.cs, ThreadStart.cs, ThreadStateException.cs,
662         Timeout.cs, Timer.cs, TimerCallback.cs, WaitCallback.cs,
663         WaitHandle.cs, WaitOrTimerCallback.cs: System.Threading class
664         stubs.
665         
666 2001-07-18  Michael Lambert <michaellambert@email.com>
667
668         * ThreadPriority.cs, ThreadState.cs: Add.