Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / 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
- StringDictionaryWithComparer.cs
- StrokeNodeData.cs
- XmlSchemaInfo.cs
- FormsAuthenticationCredentials.cs
- DocumentPage.cs
- DataServiceRequestOfT.cs
- MatcherBuilder.cs
- XmlSequenceWriter.cs
- ToolboxBitmapAttribute.cs
- CodeTypeConstructor.cs
- FormViewModeEventArgs.cs
- WebPartMinimizeVerb.cs
- Visual.cs
- TimeSpanMinutesOrInfiniteConverter.cs
- DataGridColumnHeadersPresenterAutomationPeer.cs
- WebPartConnectionsConfigureVerb.cs
- RepeatEnumerable.cs
- UnauthorizedAccessException.cs
- TextDpi.cs
- ExpressionVisitorHelpers.cs
- SafeEventHandle.cs
- MappingException.cs
- COM2IVsPerPropertyBrowsingHandler.cs
- Duration.cs
- Util.cs
- ActionFrame.cs
- BindingMAnagerBase.cs
- OpenTypeLayoutCache.cs
- ResourceReferenceKeyNotFoundException.cs
- UnicastIPAddressInformationCollection.cs
- GridViewUpdateEventArgs.cs
- SystemFonts.cs
- DataGridViewCellStyleBuilderDialog.cs
- ActiveDocumentEvent.cs
- TextSelectionHelper.cs
- HtmlValidationSummaryAdapter.cs
- DocumentPageViewAutomationPeer.cs
- ButtonField.cs
- Choices.cs
- StretchValidation.cs
- ExpressionNode.cs
- DateTimeFormatInfo.cs
- Privilege.cs
- LineUtil.cs
- TraceData.cs
- DrawingVisual.cs
- AttachmentCollection.cs
- DataExpression.cs
- ParameterInfo.cs
- PingOptions.cs
- ProvidersHelper.cs
- XmlSchemaProviderAttribute.cs
- RouteItem.cs
- _BufferOffsetSize.cs
- EnumBuilder.cs
- SchemaDeclBase.cs
- XmlWriterDelegator.cs
- EntityDesignerUtils.cs
- ContentElement.cs
- XmlResolver.cs
- ReflectionTypeLoadException.cs
- SystemIPv6InterfaceProperties.cs
- GroupBox.cs
- CopyAttributesAction.cs
- WhiteSpaceTrimStringConverter.cs
- Rotation3DAnimationUsingKeyFrames.cs
- ActivityPropertyReference.cs
- WebExceptionStatus.cs
- SubclassTypeValidator.cs
- OpenTypeLayoutCache.cs
- Column.cs
- XPathNavigatorKeyComparer.cs
- ThreadInterruptedException.cs
- RegexGroup.cs
- Inline.cs
- WebBrowserContainer.cs
- XMLSyntaxException.cs
- SqlConnectionString.cs
- XslAstAnalyzer.cs
- OledbConnectionStringbuilder.cs
- WebPartDisplayModeCancelEventArgs.cs
- SchemaCollectionPreprocessor.cs
- ExtendedProtectionPolicyElement.cs
- RepeatBehaviorConverter.cs
- ParameterElement.cs
- PointLightBase.cs
- Unit.cs
- WebColorConverter.cs
- QilLoop.cs
- WorkflowRuntimeElement.cs
- HostSecurityManager.cs
- GeneralTransform.cs
- TextServicesDisplayAttributePropertyRanges.cs
- EntryIndex.cs
- GetWinFXPath.cs
- MailAddressCollection.cs
- InputLanguageSource.cs
- JoinTreeNode.cs
- PathData.cs
- UIHelper.cs