1 2005-04-28 Sebastien Pouliot <sebastien@ximian.com>
3 * Thread.cs: Added property to get the ExecutionContext in 2.0. Fixed
4 GetCompressedStack and made SetCompressedStack available (as internal)
7 2005-04-28 Sebastien Pouliot <sebastien@ximian.com>
9 * AsyncFlowControl.cs: Updated wrt beta2.
10 * ExecutionContext.cs: Updated wrt beta2. Class is now internal in
11 NET_1_1 to allow the compressed stack propagation to other threads.
12 * CompressedStack.cs: Updated wrt beta2. Class is internal in NET_1_1
13 to allow the compressed stack propagation to other threads.
14 * ContextCallback.cs: Updated wrt beta2.
15 * HostExecutionContext.cs: Updated wrt beta2.
16 * HostExecutionContextManager.cs: Updated wrt beta2.
17 * Thread.cs: Added internal property to get the ExecutionContext.
19 2005-04-19 Zoltan Varga <vargaz@freemail.hu>
21 * Thread.cs: Add some unused fields.
23 2005-04-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
25 * ThreadPool.cs: BindHandle does nothing now.
27 2005-04-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
29 * Thread.cs: clear the Unstarted bit before calling Start_internal.
32 2005-04-04 Ben Maurer <bmaurer@ximian.com>
34 * Thread.cs: Do argument checking for Current[UI]Culture to make
35 the exception more clear for a null value being set.
37 2005-03-24 Sebastien Pouliot <sebastien@ximian.com>
39 * CompressedStack.cs: Added LinkDemand for UnmanagedCode and ECMA
40 public key on GetCompressedStack method.
41 * Mutex: Added LinkDemand for UnmanagedCode to create named (system
43 * Thread.cs: Added LinkDemand for ECMA public key on [Get|Set]
44 CompressedStack methods.
45 * WaitHandle.cs: Added LinkDemand and InheritanceDemand for
46 UnmanagedCode on set Handle property.
48 2005-03-10 Zoltan Varga <vargaz@freemail.hu>
50 * Thread.cs: Make slothash a ThreadStatic field. Fixes #65414.
52 2005-02-21 Zoltan Varga <vargaz@freemail.hu>
54 * Monitor.cs Interlocked.cs: Add net 2.0 ReliabilityContractAttributes.
56 2005-02-20 Zoltan Varga <vargaz@freemail.hu>
58 * Interlocked.cs: Applied patch from Luca Barbieri (luca.barbieri@gmail.com). Add NET 2.0 methods.
60 Tue Feb 15 18:19:11 CET 2005 Paolo Molaro <lupus@ximian.com>
62 * Thread.cs: make the slothash a field in MonoThread.
64 2005-01-27 Sebastien Pouliot <sebastien@ximian.com>
66 * Overlapped.cs: Added check for ControlPolicy and ControlEvidence for
67 Unsafe pack. Added MonoTODO for missing security stack propagation.
68 * Thread.cs: Add security checks for ControlThread.
69 * ThreadPool.cs: Added declarative security checks.
71 Thu Jan 13 18:15:32 CET 2005 Paolo Molaro <lupus@ximian.com>
73 * Thread.cs: implement stacksize and parameterized
74 start functionality (requires matching runtime).
76 2005-01-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
78 * ThreadAbortException.cs: added private serialization .ctor.
80 2004-12-20 Sebastien Pouliot <sebastien@ximian.com>
82 * CompressedStack.cs: Implemented most todo so it's usable for CAS.
83 * CompressedStackSwitcher.cs: Implemented most todo.
84 * Thread.cs: Implement support for getting/setting CompressedStack.
86 2004-12-15 Zoltan Varga <vargaz@freemail.hu>
88 * Thread.cs: Change type of culture_info and ui_culture_info to
89 IntPtr. Implement correct culture handling for the UI culture as
92 2004-12-14 Zoltan Varga <vargaz@freemail.hu>
94 * Thread.cs: Optimize CurrentCulture to avoid initializing the
95 serialization infrastructure in the common case when the culture is
98 2004-12-06 Zoltan Varga <vargaz@freemail.hu>
100 * Thread.cs: Add new fields 'serialized_culture_info{_len}'.
102 * Thread.cs (CurrentCulture): Fix leaking of culture info objects
103 across appdomains. Partially fixes #50049.
105 2004-12-05 Miguel de Icaza <miguel@ximian.com>
107 * AutoResetEvent.cs (Set, Reset): If we are disposed, throw a
108 ObjectDisposedEvent, helped track the WebConnection destructor
111 2004-09-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
113 * Timer.cs: don't invoke the callback twice when the timer changes.
116 2004-09-08 Marek Safar <marek.safar@seznam.cz>
118 * Interlocked.cs: Class is static in NET_2_0.
120 2004-09-04 Sebastien Pouliot <sebastien@ximian.com>
122 * Thread.cs: Changed an imperative security demand to declarative
123 (unsupported) so it doesn't (for now) call the security runtime.
125 2004-08-20 Sebastien Pouliot <sebastien@ximian.com>
127 * Thread.cs: Added Fx 2.0 properties/methods/attributes.
129 2004-08-12 Sebastien Pouliot <sebastien@ximian.com>
131 * CompressedStackSwitcher.cs: Added missing [ComVisible] and
132 [ReliabilityContract] attributes.
133 * ExecutionContext.cs: Added missing [ComVisible] and
134 [Serializable] attributes.
135 * HostExecutionContext.cs: Added missing [ComVisible] attribute.
136 * HostExecutionContextManager.cs: Added missing [ComVisible] and
137 [ReliabilityContract] attributes.
138 * HostExecutionContextSwitcher.cs: Added missing Equals and
139 GetHashCode methods and [ComVisible] and [ReliabilityContract] attrs.
140 * ParameterizedThreadStart.cs: New delegate in NET_2_0.
141 * SendOrPostCallback.cs: Added missing [ComVisible] attribute.
142 * SynchronizationContext.cs: Added new (2.0 beta1) methods Copy and
143 WaitHelper. Added missing [ComVisible] and [ReliabilityContract] attrs.
144 * SynchronizationContextSwitcher.cs: Added missing [ComVisible] and
145 [ReliabilityContract] attributes.
147 2004-08-08 Sebastien Pouliot <sebastien@ximian.com>
149 * HostExecutionContext.cs: Fx 2.0 stub required for AppDomain.
150 * HostExecutionContextManager.cs: Fx 2.0 stub required for AppDomain.
151 * HostExecutionContextSwitcher.cs: Fx 2.0 stub required for AppDomain.
153 2004-08-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
155 * Timer.cs: don't invoke the callback if the period changes before the
156 due time. Fixes bug #62421.
158 2004-07-27 Lluis Sanchez Gual <lluis@novell.com>
160 * ExecutionContext.cs, ExecutionContextSwitcher.cs,
161 SynchronizationContext.cs, SynchronizationContextSwitcher.cs: Added
164 2004-07-15 Dick Porter <dick@ximian.com>
166 * Thread.cs: Hold a lock in GetNamedDataSlot. Fixes bug 61582,
167 based on patch by Sébastien Robitaille
168 (sebastien.robitaille@croesus.com). Also fix instances of
169 lock(typeof(Thread)) to lock a private object instead.
171 2004-07-14 Sebastien Pouliot <sebastien@ximian.com>
173 * AsyncFlowControl.cs: New structure in Fx 2.0 required in
174 System.Security namespace.
175 * CompressedStackSwitcher.cs: New structure in Fx 2.0 required in
176 System.Security namespace.
177 * ContextCallback.cs: New delegate in Fx 2.0 required in
178 System.Security namespace.
179 * CompressedStack.cs: Updated API for NET_2_0 profile.
181 2004-07-10 Lluis Sanchez Gual <lluis@ximian.com>
183 * SendOrPostCallback.cs: New delegate.
185 2004-06-24 Dick Porter <dick@ximian.com>
187 * Mutex.cs: Implement the createdNew parameter
189 2004-06-15 Gert Driesen <drieseng@users.sourceforge.net>
191 * Thread.cs: changed return type of VolatileRead to UIntPtr
192 * ThreadPool.cs: set return type of SetMinThreads to bool
194 2004-06-15 Lluis Sanchez Gual <lluis@ximian.com>
196 * Thread.cs: Added new fields to keep sync with MonoThread.
197 Removed state changes in Sleep and Join. The state change is now done
198 in the icall. For accessing to internal fields lock with synch_lock
199 instead of this, which can be a source of deadlocks.
201 2004-06-15 Lluis Sanchez Gual <lluis@ximian.com>
203 * Timer.cs: Don't abort the thread if Dispose() is called from the runner
206 2004-06-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
209 (CurrentPrincipal): lock on CurrentThread, not typeof (Thread) and set
210 the thread IPrincipal if we get it from the AppDomain.
212 2004-06-09 Gert Driesen <drieseng@users.sourceforge.net>
214 * CompressedStack.cs: Added finalizer to match public API of
217 2004-05-19 Lluis Sanchez Gual <lluis@ximian.com>
219 * Thread.cs: Some fixes in Abort. Implemented Suspend and Resume.
220 Added internal interruption_requested field.
222 2004-05-13 Sebastien Pouliot <sebastien@ximian.com>
224 * CompressedStack.cs: Added an internal constructor so a default one
225 doesn't appear with corcompare.
226 * Thread.cs: Added missing MemoryBarrier (only for 1.1) and SpinWait to please
227 corcompare. Both throw a NotImplementedException.
228 * ThreadPool.cs: Added missing UnsafeRegisterWaitForSingleObject methods (4
229 overloads) to please corcompare. All throw a NotImplementedException.
231 2004-05-12 Zoltan Varga <vargaz@freemail.hu>
233 * CompressedStack.cs: New file.
235 2004-04-15 Lluis Sanchez Gual <lluis@ximian.com>
237 * ThreadPool.cs: Added GetMinThreads and SetMinThreads.
238 * Timer.cs: In Change, return false if the timer has been disposed.
239 In Dispose, notify the WaitHandle.
241 2004-04-11 Lluis Sanchez Gual <lluis@ximian.com>
243 * ReaderWriterLock.cs: More fixes: never wait where acquiring a reader lock
244 if the thread already has the lock. Added readyWaitingReaders variable to
245 keep track of threads ready to get the reader lock.
247 2004-04-11 Lluis Sanchez Gual <lluis@ximian.com>
249 * LockQueue.cs: Moved lockCount change inside the rwlock lock. Removed
250 lock(this) when entering the rwlock to avoid a deadlock.
251 * ReaderWriterLock.cs: In AcquireWriterLock, queue the thread if the queue
252 is not empty (even if state==0).
254 2004-04-09 Zoltan Varga <vargaz@freemail.hu>
256 * Timer.cs: Call the callback immediately if dueTime is 0. Fixes
259 2004-04-08 Jackson Harper <jackson@ximian.com>
261 * ReaderWriterLock.cs: Fix tyop
263 2004-04-08 Lluis Sanchez Gual <lluis@ximian.com>
265 * ReaderWriterLock.cs: Changed some methods to private.
266 * WaitHandle.cs: In Wait methods, release the synchronization context when
269 2004-04-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
271 * Timer.cs: call Abort on the Runner instance too.
273 2004-04-07 Jackson Harper <jackson@ximian.com>
275 * Thread.cs: Use new culture info method for constructing the
278 2004-04-07 Lluis Sanchez Gual <lluis@ximian.com>
280 * ReaderWriterLock.cs: When a thread holds a writer lock, a call to
281 AcquireReaderLock works like a call to AcquireWriterLock.
283 2004-04-06 Lluis Sanchez Gual <lluis@ximian.com>
285 * Monitor.cs: In Wait(), release the synchronization context when
288 2004-04-06 Lluis Sanchez Gual <lluis@ximian.com>
290 * LockCookie.cs: Keep in this class the count of reader or writer locks
291 for a thread, not only whether it has locks or not.
292 * LockQueue.cs: Added property for checking if a thread is waiting in
293 the queue. Wait now returns a boolean that set to false on timeout
295 * ReaderWriterLock.cs: Started fixing bugs but I had to rewrite a lot of it.
296 The main change is that now it keeps a reader lock count for each
297 thread. This is needed since methods like ReleaseLock or
298 UpgradeToWriterLock need to return a per-thread status in LockCookie.
299 Also added support for recursive writer-lock requests.
301 2004-03-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
303 * ThreadAbortException.cs: use same HResult as MS.
304 * Timer.cs: abort the running thread when disposing the Timer. This
305 fixes NullRefs when finishing xsp.
307 2004-03-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
309 * NativeOverlapped.cs: added 2 new internal fields.
310 * Overlapped.cs: implemented, but it's not used.
312 * ThreadPool.cs: implemented BindHandle.
314 2004-03-08 Zoltan Varga <vargaz@freemail.hu>
316 * Timer.cs (Dispose): Applied patch from Jaroslaw Kowalski
317 (jaak@zd.com.pl). Fix finalization problems during appdomain unload.
319 2004-02-23 Jackson Harper <jackson@ximian.com>
321 * LockCookie.cs: Add some fields for restoring locks.
322 * ReaderWriterLock.cs: Implement
323 * LockQueue.cs: New File - used for queueing thread locks in
326 2004-02-19 Jackson Harper <jackson@ximian.com>
328 * Monitor.cs: Fix spelleng.
330 2004-02-09 Zoltan Varga <vargaz@freemail.hu>
332 * Thread.cs: Add fields added to unmanaged MonoThread here as well.
333 Fixes random errors caused by memory corruption.
335 2004-02-06 Zoltan Varga <vargaz@freemail.hu>
337 * Thread.cs: Store the thread name in unmanaged memory, since the
338 thread object is shared between appdomains.
340 2004-02-05 Sebastien Pouliot <sebastien@ximian.com>
342 * Thread.cs: Implemented CurrentPrincipal.
344 2004-01-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
346 * Thread.cs: delayed thread creation until Start is called. If we
347 don't do that and Start() is not called, the thread is leaked. First
348 step towards fixing bug #53078.
350 2003-12-02 Dick Porter <dick@ximian.com>
352 * Thread.cs: Throw InvalidOperationException if Thread.Name is
355 2003-12-01 Dick Porter <dick@ximian.com>
357 * Thread.cs: Implement CurrentCulture and CurrentUICulture
359 2003-11-12 Miguel de Icaza <miguel@ximian.com>
361 * Thread.cs: Add new VolatileRead/VolatileWrite methods from 1.1
363 2003-10-23 Lluis Sanchez Gual <lluis@ximian.com>
365 * Thread.cs: Added ResetDataStoreStatus and RestoreDataStoreStatus
366 methods. They are used in CrossAppDomainChannel to save and restore
367 thread's local data when switching between domains.
369 2003-10-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
371 * ManualResetEvent.cs: added check for disposed.
372 * Thread.cs: no need to init this field.
374 2003-10-01 Zoltan Varga <vargaz@freemail.hu>
376 * Thread.cs: Add locking to AllocateNamedDataSlot and
379 Wed Aug 20 12:01:36 CEST 2003 Paolo Molaro <lupus@ximian.com>
381 * Thread.cs: put all the fields at the start and add
382 more fields needed by the runtime.
384 2003-08-14 Lluis Sanchez Gual <lluis@ximian.com>
386 * Thread.cs: SetData() method: use Hashtable.Contains to check
387 if a dataslot has been allocated (value could be null).
389 2003-07-23 Duncan Mak <duncan@ximian.com>
391 * WaitHandle.cs (CheckDisposed): This method is not in the public
392 API, mark it as 'internal'.
394 2003-07-01 Dick Porter <dick@ximian.com>
396 * Thread.cs: Throw an exception if thread creation failed.
397 (Better than just blowing up later.)
399 2003-06-27 Dietmar Maurer <dietmar@ximian.com>
401 * ThreadPool.cs: use async delegate invoke.
403 2003-06-25 Dick Porter <dick@ximian.com>
405 * WaitHandle.cs: Default handle value should be InvalidHandle, not
408 2003-06-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
410 * ThreadPool.cs: correctly create a TimeSpan with provided the number of
413 * WaitHandle.cs: fixes for WaitAny/All and TimeSpan.
415 2003-06-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
417 * WaitHandle.cs: checks and exceptions.
419 2003-06-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
421 * NativeEventCalls.cs: added CloseEvent_intenal.
422 * WaitHandle.cs: call CloseEvent_internal when disposing.
424 2003-05-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
426 * RegisteredWaitHandle.cs: check that the callback is not null before
429 * ThreadPool.cs: fixed timeout -> TimeSpan conversions (closes bug
430 #43963). Queue the item before setting the handle. If there's a timeout,
431 avoid trying to Dequeue, getting the exception et al, just continue the
434 Mon May 19 09:07:45 CEST 2003 Paolo Molaro <lupus@ximian.com>
436 * Monitor.cs: removed test_owner, the check is already done in the
439 Tue May 13 15:34:29 CEST 2003 Paolo Molaro <lupus@ximian.com>
441 * Thread.cs: added missing field used by the runtime and
442 a new field to support thread-static data.
444 2003-04-17 Pedro Mart�ez Juli� <yoros@wanadoo.es>
446 * Timer.cs: Change the position of two lines because they were
447 before the "if" that ensures the integrity. After this, the first of
448 that two lines was producing a NullReferenceException.
450 2003-04-09 Dick Porter <dick@ximian.com>
452 * Thread.cs: Make sure a reference to the ThreadStart delegate is
453 held. There's no telling how long it will be before
454 Thread.Start() is called, and GC might destroy the delegate.
455 Thread() and Start() need to be rewritten so that the runtime
456 creates the new thread when Start() is called, which will simplify
457 the code a great deal.
459 2003-03-20 Miguel de Icaza <miguel@ximian.com>
461 * Thread.cs (CurrentCuluture): use the invaraint culture instead
462 of "" for the current_culture setting.
464 2003-03-25 Zoltan Varga <vargaz@freemail.hu>
466 * Thread.cs: Fix visibility of ResetAbort().
468 2003-03-18 Dick Porter <dick@ximian.com>
470 * Thread.cs: Keep the thread state updated in all the places that
471 require it. (Suspend, Resume and Interrupt not handled yet)
473 2003-03-03 Lluis Sanchez Gual <lluis@ideary.com>
475 * Thread.cs: Changed implementation of CurrentContext, adapted to the changes
478 2003-02-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
480 * Thread.cs: implemented CurrentContext.
482 2003-02-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
484 * Thread.cs: made the thread_id for the current thread accesible through
485 an internal property.
487 2003-02-17 Dick Porter <dick@ximian.com>
489 * Thread.cs: Added the Start semaphore field to the class. Update
490 the thread state after Start() has returned, not before.
492 2003-02-13 Zoltan Varga <vargaz@freemail.hu>
494 * Thread.cs (Sleep): Timeout.Infinite is a value argument.
496 2003-02-11 Dick Porter <dick@ximian.com>
498 * Monitor.cs: Infinite wait is Infinite, not 0 ms
500 2003-02-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
502 * Thread.cs: fixed bug #37759.
504 2003-02-07 Patrik Torstensson
506 * Timer.cs: Set the Background thread flag for the timer thread
508 2003-02-05 Patrik Torstensson
510 * ThreadPool.cs: Reformated and fixed issue that made all thread exit the pool.
512 2003-02-04 Lluis Sanchez Gual <lluis@ideary.com>
514 * ThreadPool.cs: Implemented RegisterWaitForSingleObject methods.
516 Tue Jan 28 17:55:59 CET 2003 Paolo Molaro <lupus@ximian.com>
518 * Thread.cs: delay-init datastorehash.
520 2003-01-10 Patrik Torstensson <totte@race-x-change.com>
522 * ThreadPool.cs: Temporary removed the usage of monitor thread, implemented a
523 model more equal to the MS one.
525 2002-12-10 Dick Porter <dick@ximian.com>
531 * WaitHandle.cs: Use TotalMilliseconds to convert a TimeSpan to
532 ms, not Milliseconds.
534 2002-12-07 Martin Baulig <martin@ximian.com>
536 * Timer.cs: Make it actually work; now it no longer sets your
537 application on fire if you use a zero periode and Timer.Change()
540 2002-11-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
542 * Timer.cs: implemented more stuff. It works now.
544 2002-10-25 Zoltan Varga <vargaz@freemail.hu>
546 * Thread.cs: Implement GetDomain() and GetDomainID().
548 2002-10-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
550 * ThreadPool.cs: now the monitor thread is not sleeping and checking if
551 more worker threads needed. It waits on _DataInQueue. If (and only if)
552 there's data in the queue it checks if more worker threads needed and
553 then sleeps 0.5s before waiting for queued data again.
555 2002-09-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
557 * ThreadPool.cs: set IsThreadPoolThread before starting the worker.
559 2002-09-11 Dick Porter <dick@ximian.com>
562 * ManualResetEvent.cs:
563 * AutoResetEvent.cs: Use the WaitHandle.Handle property instead of
566 * WaitHandle.cs: Hide the os_handle field and the WaitOne_internal
569 2002-09-03 Dick Porter <dick@ximian.com>
571 * Thread.cs: Added thread ID field
573 2002-08-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
575 * WaitHandle.cs: IDisposable fixes.
577 2002-08-14 Dick Porter <dick@ximian.com>
579 * Thread.cs: Make CurrentUICulture act the same as CurrentCulture
582 2002-08-12 Dietmar Maurer <dietmar@ximian.com>
584 * ThreadAbortException.cs: impl. ExceptionState property.
586 * Thread.cs: moved all instance variables to the start of the
587 class. added support for Thread::Abort()
589 2002-04-30 Dick Porter <dick@ximian.com>
591 * Thread.cs: If LocalDataStoreSlot already has data set, remove it
592 before adding a new one.
594 Use the Thread object destructor to tell the runtime to close the
597 2002-04-14 Patrik Torstensson <patrik.torstensson@labs2.com>
599 * Interlocked.cs: made all methods icalls.
601 2002-04-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
603 * IOCompletionCallback.cs: added attributes to the delegate
604 (CLSCompliant(false) and Serializable).
606 2002-04-14 Patrik Torstensson <patrik.torstensson@labs2.com>
607 * Thread.cs: Fixed IsThreadPoolThread to use a internal property instead of extending
608 the threadstate enum.
609 * ThreadPool.cs: Now using the internal Isthreadpoolthread property
610 * ThreadState.cs: removed non-standard enum (ThreadPoolThread)
612 2002-04-14 Patrik Torstensson <patrik.torstensson@labs2.com>
614 * ThreadState.cs: Added enum for threadpool thread
615 * Thread.cs: changed the set/clr_state to be internal (used from threadpool)
616 * Thread.cs: Added IsThreadPoolThread
617 * ThreadPool.cs: Implementation of QueueUserWorkItem
619 Wed Feb 13 21:51:30 CET 2002 Paolo Molaro <lupus@ximian.com>
621 * Thread.cs: implement CurrentCulture property needed by
622 Convert.ChangeType() (used when compiling enums).
624 2002-01-23 Dick Porter <dick@ximian.com>
626 * ManualResetEvent.cs:
627 * AutoResetEvent.cs: Fixed DOS line endings
629 2002-01-22 Veronica De Santis <veron78@interfree.it>
631 * NativeEventCalls : Class that contains internal calls shared by Auto
632 and Manual Reset Events
633 * AutoResetEvents.cs : Added class AutoResetEvents and its implementation
634 * ManualResetEvents.cs : Added class ManualResetEvents and its implementation
636 2002-01-16 Veronica De Santis <veron78@interfree.it>
638 * WaitHandle.cs : Renamed handle to os_handle and make it protected
640 * Mutex.cs : Write the System.Threading.Mutex methods ( constructors
641 and the ReleaseMutex)
643 2002-01-15 Dick Porter <dick@ximian.com>
646 * Thread.cs: Make the runtime's idea of infinite timeouts coincide
647 with the class library's
649 2002-01-10 Dick Porter <dick@ximian.com>
651 * WaitHandle.cs: Added checks for too many handles and null
652 handles in WaitAll() and WaitAny
655 2002-01-05 Ravi Pratap <ravi@ximian.com>
657 * AutoResetEvent.cs, ManualResetEvent.cs, Monitor.cs : MonoTODO
660 * Mutex.cs, Overlapped.cs, ReaderWriterLock.cs, RegisteredWaitHandle.cs,
661 Thread.cs, ThreadAbortException.cs, ThreadPool.cs, Timer.cs, WaitHandler.cs : Ditto.
663 2001-12-11 Dick Porter <dick@ximian.com>
665 * WaitHandle.cs: Implemented WaitAll(), WaitAny() and WaitOne() as
668 2001-11-26 Dick Porter <dick@ximian.com>
670 * Thread.cs: DataSlot uses a single system TLS slot, and a
671 hashtable per thread. Some minor changes to reflect the new
672 internal calls using the new IO library, and the newly-supported
673 bool returns from internal calls.
675 * Monitor.cs: Use bool returns from internal calls now they are
676 supported by the runtime. Coalesce enter with the try_enter
679 Wed Nov 14 17:06:18 CET 2001 Paolo Molaro <lupus@ximian.com>
681 * Overlapped.cs, ThreadPool.cs, Timer.cs: CLSCompliant updates.
683 2001-10-03 Dick Porter <dick@ximian.com>
685 * Monitor.cs: Implemented all methods except the two Wait()
686 methods that take boolean parameters
688 2001-09-28 Dick Porter <dick@ximian.com>
690 * Thread.cs: Implemented AllocateDataSlot(),
691 AllocateNamedDataSlot(), FreeNamedDataSlot(), GetData(),
692 GetNamedDataSlot(), SetData(), IsBackground. Reworked Thread()
693 and Start() to avoid a race condition. Added thread-safe state
694 changing private operations.
696 * Monitor.cs: Comment out the GetType() calls because it isn't implemented yet
698 2001-09-25 Dick Porter <dick@ximian.com>
700 * Thread.cs: Implement Join and timed Join, set correct state
701 around Start, Join and Sleep calls, implement IsAlive and
702 ThreadState properties.
704 * ThreadState.cs (Threading): Added StopRequested,
705 SuspendRequested, Suspended values
707 2001-09-23 Dick Porter <dick@ximian.com>
709 * Thread.cs: Implemented CurrentThread and Sleep (both versions)
710 with internal calls, and Name.
712 2001-09-21 Dick Porter <dick@ximian.com>
714 * Thread.cs: Implement Thread(ThreadStart) constructor and Start()
715 with an internal call
717 * WaitHandle.cs: Close calls Dispose(false)
719 2001-09-13 Dick Porter <dick@ximian.com>
721 * ApartmentState.cs (Threading): Set the correct enum values
723 2001-09-13 Dick Porter <dick@ximian.com>
725 * ApartmentState.cs, AutoResetEvent.cs, IOCompletionCallback.cs,
726 Interlocked.cs, LockCookie.cs, ManualResetEvent.cs, Monitor.cs,
727 Mutex.cs, NativeOverlapped.cs, Overlapped.cs, ReaderWriterLock.cs,
728 RegisteredWaitHandle.cs, SynchronizationLockException.cs,
729 Thread.cs, ThreadAbortException.cs, ThreadInterruptedException.cs,
730 ThreadPool.cs, ThreadStart.cs, ThreadStateException.cs,
731 Timeout.cs, Timer.cs, TimerCallback.cs, WaitCallback.cs,
732 WaitHandle.cs, WaitOrTimerCallback.cs: System.Threading class
735 2001-07-18 Michael Lambert <michaellambert@email.com>
737 * ThreadPriority.cs, ThreadState.cs: Add.