Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / Net / System / Net / Mail / MultiAsyncResult.cs / 1 / MultiAsyncResult.cs
namespace System.Net.Mime { using System; internal class MultiAsyncResult : LazyAsyncResult { int outstanding; object context; internal MultiAsyncResult(object context, AsyncCallback callback, object state) : base(context,state,callback) { this.context = context; } internal object Context { get { return this.context; } } internal void Enter() { Increment(); } internal void Leave() { Decrement(); } internal void Leave(object result) { this.Result = result; Decrement(); } void Decrement() { if (System.Threading.Interlocked.Decrement(ref this.outstanding) == -1) { base.InvokeCallback(Result); } } void Increment() { System.Threading.Interlocked.Increment(ref this.outstanding); } internal void CompleteSequence() { Decrement(); } internal static object End(IAsyncResult result) { MultiAsyncResult thisPtr = (MultiAsyncResult)result; thisPtr.InternalWaitForCompletion(); return thisPtr.Result; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. namespace System.Net.Mime { using System; internal class MultiAsyncResult : LazyAsyncResult { int outstanding; object context; internal MultiAsyncResult(object context, AsyncCallback callback, object state) : base(context,state,callback) { this.context = context; } internal object Context { get { return this.context; } } internal void Enter() { Increment(); } internal void Leave() { Decrement(); } internal void Leave(object result) { this.Result = result; Decrement(); } void Decrement() { if (System.Threading.Interlocked.Decrement(ref this.outstanding) == -1) { base.InvokeCallback(Result); } } void Increment() { System.Threading.Interlocked.Increment(ref this.outstanding); } internal void CompleteSequence() { Decrement(); } internal static object End(IAsyncResult result) { MultiAsyncResult thisPtr = (MultiAsyncResult)result; thisPtr.InternalWaitForCompletion(); return thisPtr.Result; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Keyboard.cs
- TextCollapsingProperties.cs
- JsonServiceDocumentSerializer.cs
- ScriptResourceMapping.cs
- TextDecorationCollectionConverter.cs
- Stylesheet.cs
- Util.cs
- MsmqHostedTransportManager.cs
- SchemaNames.cs
- Listener.cs
- XmlDataCollection.cs
- MenuItemStyle.cs
- WebPartConnection.cs
- GridViewColumn.cs
- XmlDesignerDataSourceView.cs
- JsonEncodingStreamWrapper.cs
- Base64Stream.cs
- OdbcConnectionStringbuilder.cs
- PropertyChangedEventArgs.cs
- EncoderBestFitFallback.cs
- DataTableMappingCollection.cs
- XmlSignificantWhitespace.cs
- CodeNamespaceCollection.cs
- RuntimeWrappedException.cs
- DataGridItemCollection.cs
- DocumentGridPage.cs
- HtmlLink.cs
- ExceptionRoutedEventArgs.cs
- TemplatedControlDesigner.cs
- XmlSerializationGeneratedCode.cs
- WebPartUserCapability.cs
- SqlTypeSystemProvider.cs
- NavigationProperty.cs
- JavaScriptSerializer.cs
- AxHost.cs
- ObjectKeyFrameCollection.cs
- ExpressionBuilderCollection.cs
- FontStyle.cs
- Math.cs
- DtdParser.cs
- ValidatedControlConverter.cs
- ToolStripItemEventArgs.cs
- WindowsButton.cs
- RoutingEndpointTrait.cs
- EnumerableWrapperWeakToStrong.cs
- FolderNameEditor.cs
- XmlSequenceWriter.cs
- _NegoState.cs
- ObjectConverter.cs
- Baml2006ReaderFrame.cs
- EmptyStringExpandableObjectConverter.cs
- PseudoWebRequest.cs
- DetailsViewPageEventArgs.cs
- ScrollBar.cs
- TextBoxBase.cs
- CodeIdentifiers.cs
- MSHTMLHostUtil.cs
- AspNetHostingPermission.cs
- WebBaseEventKeyComparer.cs
- CloudCollection.cs
- StringDictionary.cs
- AddIn.cs
- CapabilitiesPattern.cs
- CodeAttributeDeclaration.cs
- SingleObjectCollection.cs
- RuleCache.cs
- Int16AnimationBase.cs
- HttpRuntimeSection.cs
- Tuple.cs
- AsyncResult.cs
- DesignSurfaceManager.cs
- ObjectSecurity.cs
- RegistrySecurity.cs
- DataGridViewControlCollection.cs
- IntSecurity.cs
- DataGridViewComboBoxEditingControl.cs
- SvcFileManager.cs
- GenerateTemporaryAssemblyTask.cs
- PageBreakRecord.cs
- UniformGrid.cs
- WindowInteractionStateTracker.cs
- InputScope.cs
- AuthorizationRuleCollection.cs
- PerformanceCounterNameAttribute.cs
- Matrix.cs
- BrowserCapabilitiesCodeGenerator.cs
- HttpListenerContext.cs
- DynamicDiscoveryDocument.cs
- FormViewPageEventArgs.cs
- StrokeCollectionConverter.cs
- FixedLineResult.cs
- ForceCopyBuildProvider.cs
- GeometryModel3D.cs
- SQLInt64.cs
- BulletedListEventArgs.cs
- ObjectDataSourceStatusEventArgs.cs
- ZipPackage.cs
- SyndicationDeserializer.cs
- WebPartUtil.cs
- GridViewSortEventArgs.cs