Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / 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
- FontStyle.cs
- FormViewDeleteEventArgs.cs
- VisemeEventArgs.cs
- XmlLinkedNode.cs
- CoordinationService.cs
- MasterPageCodeDomTreeGenerator.cs
- ImageMapEventArgs.cs
- GeometryDrawing.cs
- SqlCacheDependencyDatabaseCollection.cs
- ResourceWriter.cs
- DrawListViewItemEventArgs.cs
- DnsPermission.cs
- PersistenceTypeAttribute.cs
- ToolBarButtonDesigner.cs
- StatusBarItemAutomationPeer.cs
- ToolTip.cs
- WebBrowserUriTypeConverter.cs
- HandlerBase.cs
- DesignerSerializerAttribute.cs
- ToolStripDropDownItem.cs
- WebPartZoneCollection.cs
- CompleteWizardStep.cs
- ErrorRuntimeConfig.cs
- ListenerSingletonConnectionReader.cs
- CompositionAdorner.cs
- SHA384CryptoServiceProvider.cs
- ReliableDuplexSessionChannel.cs
- ToolStripHighContrastRenderer.cs
- HttpRequestTraceRecord.cs
- Boolean.cs
- SQLInt16.cs
- _NegoState.cs
- ComponentResourceKeyConverter.cs
- _NetRes.cs
- MatchSingleFxEngineOpcode.cs
- HatchBrush.cs
- TextEditorCharacters.cs
- XmlSerializer.cs
- FamilyTypefaceCollection.cs
- ErrorFormatterPage.cs
- ThreadExceptionDialog.cs
- TextHidden.cs
- _NtlmClient.cs
- WorkflowDispatchContext.cs
- LongTypeConverter.cs
- System.Data_BID.cs
- OrderedHashRepartitionEnumerator.cs
- SigningDialog.cs
- TcpServerChannel.cs
- ProgressPage.cs
- ImageCodecInfo.cs
- TabControlAutomationPeer.cs
- QueueProcessor.cs
- HashRepartitionEnumerator.cs
- Parser.cs
- SqlDataSourceTableQuery.cs
- CheckBoxFlatAdapter.cs
- DropSource.cs
- GeometryCombineModeValidation.cs
- PropertyDescriptorCollection.cs
- DataGridViewLinkColumn.cs
- SingleSelectRootGridEntry.cs
- GridViewPageEventArgs.cs
- TempEnvironment.cs
- IntellisenseTextBox.designer.cs
- LinqExpressionNormalizer.cs
- shaperfactoryquerycacheentry.cs
- ToolStripArrowRenderEventArgs.cs
- UnSafeCharBuffer.cs
- IndexingContentUnit.cs
- DataBindingExpressionBuilder.cs
- TimeZone.cs
- HtmlElementCollection.cs
- SharedUtils.cs
- DataExpression.cs
- EmbeddedMailObject.cs
- srgsitem.cs
- HasCopySemanticsAttribute.cs
- HttpFileCollectionWrapper.cs
- ScopeCollection.cs
- ClaimSet.cs
- DataRowComparer.cs
- CleanUpVirtualizedItemEventArgs.cs
- WebPartConnection.cs
- _FtpDataStream.cs
- CompositeTypefaceMetrics.cs
- HtmlMeta.cs
- SiteMapNodeItemEventArgs.cs
- DiffuseMaterial.cs
- PinnedBufferMemoryStream.cs
- TimerElapsedEvenArgs.cs
- DataGridViewRowPostPaintEventArgs.cs
- ExtendedPropertyInfo.cs
- EnumMemberAttribute.cs
- CalendarData.cs
- DotAtomReader.cs
- GridErrorDlg.cs
- CultureMapper.cs
- RepeaterItemCollection.cs
- InfoCardService.cs