Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / 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
- DoWorkEventArgs.cs
- DefaultAuthorizationContext.cs
- ProfileBuildProvider.cs
- Utilities.cs
- CrossSiteScriptingValidation.cs
- SiteMapSection.cs
- SyndicationSerializer.cs
- UncommonField.cs
- GridViewCellAutomationPeer.cs
- SqlVersion.cs
- RevocationPoint.cs
- TemplatingOptionsDialog.cs
- ObjectNotFoundException.cs
- TypeSystemProvider.cs
- ObjectToModelValueConverter.cs
- ApplicationFileCodeDomTreeGenerator.cs
- SystemIPInterfaceStatistics.cs
- XPathAncestorQuery.cs
- ServiceObjectContainer.cs
- DesigntimeLicenseContextSerializer.cs
- AmbientLight.cs
- XmlSchemaImport.cs
- Oci.cs
- ColumnHeaderConverter.cs
- MatrixTransform.cs
- PriorityQueue.cs
- HttpValueCollection.cs
- TypeUtils.cs
- DifferencingCollection.cs
- HtmlInputImage.cs
- DeviceContext.cs
- LabelAutomationPeer.cs
- SiteIdentityPermission.cs
- DoubleSumAggregationOperator.cs
- TimeSpanOrInfiniteValidator.cs
- LogLogRecordHeader.cs
- DrawingAttributeSerializer.cs
- KeyValueSerializer.cs
- WebPartDisplayModeCancelEventArgs.cs
- WindowsListViewItem.cs
- HtmlInputSubmit.cs
- FontStyles.cs
- DoubleStorage.cs
- ArgumentValueSerializer.cs
- _AuthenticationState.cs
- ProtocolsSection.cs
- OptimizedTemplateContentHelper.cs
- OracleDateTime.cs
- Regex.cs
- SafeNativeMethods.cs
- ConnectionStringSettings.cs
- HScrollBar.cs
- securitycriticaldataClass.cs
- SqlServices.cs
- DBCSCodePageEncoding.cs
- DaylightTime.cs
- EntityTypeBase.cs
- Hyperlink.cs
- DataGridViewAutoSizeColumnsModeEventArgs.cs
- HostUtils.cs
- Timeline.cs
- PreloadedPackages.cs
- HelpInfo.cs
- ContextItemManager.cs
- XomlCompilerResults.cs
- CodeGen.cs
- LocatorManager.cs
- Form.cs
- FilterQueryOptionExpression.cs
- InfocardChannelParameter.cs
- EntryIndex.cs
- NotifyInputEventArgs.cs
- EventLogPermission.cs
- DbProviderFactory.cs
- DetailsViewUpdateEventArgs.cs
- DateTimeHelper.cs
- safemediahandle.cs
- RMPublishingDialog.cs
- XmlAttributeHolder.cs
- ModelPerspective.cs
- isolationinterop.cs
- CssTextWriter.cs
- UrlMappingsModule.cs
- TypeUtil.cs
- ImageAnimator.cs
- TemplatedMailWebEventProvider.cs
- XmlSchemaRedefine.cs
- ConfigXmlElement.cs
- IntellisenseTextBox.designer.cs
- FormsAuthentication.cs
- OneOf.cs
- FloaterBaseParaClient.cs
- PropertyChangedEventArgs.cs
- OdbcTransaction.cs
- TemplateBuilder.cs
- AnnotationDocumentPaginator.cs
- DataGridRowHeaderAutomationPeer.cs
- HttpHandlerAction.cs
- PropertyKey.cs
- XPathDocumentNavigator.cs