Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / 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
- TypeTypeConverter.cs
- ConfigurationSectionGroup.cs
- DecimalAnimationBase.cs
- TemplatePagerField.cs
- FixedSOMContainer.cs
- IriParsingElement.cs
- WebPartAddingEventArgs.cs
- MultipleViewPatternIdentifiers.cs
- VersionedStreamOwner.cs
- GeneratedContractType.cs
- DeflateEmulationStream.cs
- CodeDefaultValueExpression.cs
- BitmapScalingModeValidation.cs
- Calendar.cs
- XmlBinaryWriterSession.cs
- BinaryWriter.cs
- ResourceCategoryAttribute.cs
- JsonMessageEncoderFactory.cs
- DesignerDeviceConfig.cs
- TabPageDesigner.cs
- CreateUserWizard.cs
- fixedPageContentExtractor.cs
- LiteralText.cs
- NativeMethods.cs
- LiteralText.cs
- MdImport.cs
- HtmlEncodedRawTextWriter.cs
- OdbcReferenceCollection.cs
- SchemaNotation.cs
- TCPListener.cs
- MemberDomainMap.cs
- OperationAbortedException.cs
- GPPOINT.cs
- MetadataUtil.cs
- UmAlQuraCalendar.cs
- ResourcesBuildProvider.cs
- TcpHostedTransportConfiguration.cs
- EntityDataSourceContextCreatedEventArgs.cs
- MethodCallExpression.cs
- WindowsFormsSynchronizationContext.cs
- TabItemWrapperAutomationPeer.cs
- CommandField.cs
- Duration.cs
- UnauthorizedAccessException.cs
- mediaclock.cs
- GridViewItemAutomationPeer.cs
- SafeThemeHandle.cs
- LinqDataSourceContextData.cs
- TextServicesHost.cs
- WmfPlaceableFileHeader.cs
- HttpCacheVary.cs
- ZoneButton.cs
- Stopwatch.cs
- ZipIOCentralDirectoryFileHeader.cs
- AxParameterData.cs
- Shape.cs
- HandlerBase.cs
- CommandBindingCollection.cs
- TemplateModeChangedEventArgs.cs
- HScrollProperties.cs
- TextBoxBase.cs
- RequestBringIntoViewEventArgs.cs
- ClientTargetSection.cs
- HttpModule.cs
- UniqueIdentifierService.cs
- RankException.cs
- BasicCellRelation.cs
- DataError.cs
- ToolStripTextBox.cs
- ThousandthOfEmRealDoubles.cs
- DataTableReaderListener.cs
- XmlWrappingReader.cs
- HttpCachePolicy.cs
- DirectoryNotFoundException.cs
- SHA256Managed.cs
- NetworkAddressChange.cs
- NavigatorOutput.cs
- DWriteFactory.cs
- EmptyStringExpandableObjectConverter.cs
- XmlDataSource.cs
- AmbiguousMatchException.cs
- ItemAutomationPeer.cs
- CodeParameterDeclarationExpression.cs
- Label.cs
- PrePrepareMethodAttribute.cs
- ModuleBuilder.cs
- ExpressionBinding.cs
- GeneralTransformCollection.cs
- XmlTextEncoder.cs
- DragEventArgs.cs
- StreamGeometry.cs
- BufferedGraphicsContext.cs
- DataControlReference.cs
- DockPatternIdentifiers.cs
- PriorityQueue.cs
- ExpressionBinding.cs
- BitmapEffectGroup.cs
- DataGridParentRows.cs
- IUnknownConstantAttribute.cs
- ServicePointManagerElement.cs