Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / clr / src / BCL / System / Threading / LockCookie.cs / 1 / LockCookie.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================ ** ** Class: LockCookie ** ** ** Purpose: Defines the lock that implements ** single-writer/multiple-reader semantics ** ** ===========================================================*/ namespace System.Threading { using System; [System.Runtime.InteropServices.ComVisible(true)] public struct LockCookie { private int _dwFlags; private int _dwWriterSeqNum; private int _wReaderAndWriterLevel; private int _dwThreadID; public override int GetHashCode() { // review - [....]! return _dwFlags + _dwWriterSeqNum + _wReaderAndWriterLevel + _dwThreadID; } public override bool Equals(Object obj) { if (obj is LockCookie) return Equals((LockCookie)obj); else return false; } public bool Equals(LockCookie obj) { return obj._dwFlags == _dwFlags && obj._dwWriterSeqNum == _dwWriterSeqNum && obj._wReaderAndWriterLevel == _wReaderAndWriterLevel && obj._dwThreadID == _dwThreadID; } public static bool operator ==(LockCookie a, LockCookie b) { return a.Equals(b); } public static bool operator !=(LockCookie a, LockCookie b) { return !(a == b); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================ ** ** Class: LockCookie ** ** ** Purpose: Defines the lock that implements ** single-writer/multiple-reader semantics ** ** ===========================================================*/ namespace System.Threading { using System; [System.Runtime.InteropServices.ComVisible(true)] public struct LockCookie { private int _dwFlags; private int _dwWriterSeqNum; private int _wReaderAndWriterLevel; private int _dwThreadID; public override int GetHashCode() { // review - [....]! return _dwFlags + _dwWriterSeqNum + _wReaderAndWriterLevel + _dwThreadID; } public override bool Equals(Object obj) { if (obj is LockCookie) return Equals((LockCookie)obj); else return false; } public bool Equals(LockCookie obj) { return obj._dwFlags == _dwFlags && obj._dwWriterSeqNum == _dwWriterSeqNum && obj._wReaderAndWriterLevel == _wReaderAndWriterLevel && obj._dwThreadID == _dwThreadID; } public static bool operator ==(LockCookie a, LockCookie b) { return a.Equals(b); } public static bool operator !=(LockCookie a, LockCookie b) { return !(a == b); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- BrushConverter.cs
- DateTimeUtil.cs
- ChooseAction.cs
- HMACSHA256.cs
- ServicesUtilities.cs
- QfeChecker.cs
- DeclarativeCatalogPart.cs
- DataGridHeaderBorder.cs
- AssociationType.cs
- ListViewSortEventArgs.cs
- EventProviderClassic.cs
- XamlWriterExtensions.cs
- TypeCodeDomSerializer.cs
- OleDbDataReader.cs
- FixedFindEngine.cs
- EmptyCollection.cs
- DrawingImage.cs
- RuntimeHelpers.cs
- Sql8ConformanceChecker.cs
- CodeSubDirectory.cs
- SchemaMapping.cs
- ContainerActivationHelper.cs
- EntryWrittenEventArgs.cs
- URLMembershipCondition.cs
- PageBreakRecord.cs
- Queue.cs
- RectangleF.cs
- WebPartManagerInternals.cs
- WinEventWrap.cs
- BamlResourceDeserializer.cs
- SymmetricAlgorithm.cs
- UnhandledExceptionEventArgs.cs
- OperatorExpressions.cs
- XPathScanner.cs
- DependencyPropertyKey.cs
- MarginCollapsingState.cs
- DataGridViewCellFormattingEventArgs.cs
- ListViewItemEventArgs.cs
- AxisAngleRotation3D.cs
- CircleEase.cs
- CompilationUnit.cs
- WebPartConnectionsCancelEventArgs.cs
- ClientFormsAuthenticationCredentials.cs
- ImageIndexConverter.cs
- EntitySet.cs
- PasswordTextNavigator.cs
- SelectingProviderEventArgs.cs
- XmlCharacterData.cs
- WorkflowElementDialog.cs
- DateTimePicker.cs
- Line.cs
- IDispatchConstantAttribute.cs
- SqlUdtInfo.cs
- AddingNewEventArgs.cs
- VisualBasicSettingsHandler.cs
- controlskin.cs
- RepeatInfo.cs
- ZipIOExtraFieldElement.cs
- ValuePattern.cs
- ProxyWebPartConnectionCollection.cs
- DbConnectionPoolGroup.cs
- SizeKeyFrameCollection.cs
- Misc.cs
- Propagator.cs
- MimeWriter.cs
- TextServicesManager.cs
- DataControlFieldHeaderCell.cs
- UpDownEvent.cs
- IisTraceWebEventProvider.cs
- HashUtility.cs
- XmlSchemaValidationException.cs
- DataGridViewRowDividerDoubleClickEventArgs.cs
- EndpointConfigContainer.cs
- UpdatableWrapper.cs
- GridViewCommandEventArgs.cs
- DeviceContexts.cs
- EntityDataSourceEntityTypeFilterConverter.cs
- FormViewRow.cs
- AspNetSynchronizationContext.cs
- Menu.cs
- XmlObjectSerializerWriteContext.cs
- StorageEntitySetMapping.cs
- DesignerOptions.cs
- DependencyPropertyChangedEventArgs.cs
- WebBrowserNavigatingEventHandler.cs
- PropertyCondition.cs
- OrthographicCamera.cs
- CharacterMetrics.cs
- UTF32Encoding.cs
- Point3DConverter.cs
- SocketInformation.cs
- ConfigurationManagerInternal.cs
- Section.cs
- WmpBitmapEncoder.cs
- SqlXmlStorage.cs
- StylusPlugin.cs
- WebPartUtil.cs
- Ipv6Element.cs
- DataGridViewSelectedCellCollection.cs
- PolygonHotSpot.cs