Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Net / System / Net / Mail / ClosableStream.cs / 1305376 / ClosableStream.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Net { using System; using System.IO; using System.Threading; ////// Provides a stream that notifies an event when the Close method /// is called. /// internal class ClosableStream : DelegatedStream { EventHandler onClose; int closed; internal ClosableStream(Stream stream, EventHandler onClose) : base(stream) { this.onClose = onClose; } public override void Close() { if (Interlocked.Increment(ref closed) == 1) if (this.onClose != null) this.onClose(this, new EventArgs()); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Net { using System; using System.IO; using System.Threading; ////// Provides a stream that notifies an event when the Close method /// is called. /// internal class ClosableStream : DelegatedStream { EventHandler onClose; int closed; internal ClosableStream(Stream stream, EventHandler onClose) : base(stream) { this.onClose = onClose; } public override void Close() { if (Interlocked.Increment(ref closed) == 1) if (this.onClose != null) this.onClose(this, new EventArgs()); } } } // 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
- LoginDesignerUtil.cs
- LZCodec.cs
- HtmlTextArea.cs
- CheckBox.cs
- XmlSchemaRedefine.cs
- EventSinkActivityDesigner.cs
- XamlParser.cs
- HtmlValidationSummaryAdapter.cs
- FileSystemEventArgs.cs
- Stack.cs
- SqlPersonalizationProvider.cs
- SafeCryptoKeyHandle.cs
- DetailsViewPageEventArgs.cs
- UnmanagedMarshal.cs
- ToolboxComponentsCreatedEventArgs.cs
- RenameRuleObjectDialog.Designer.cs
- SubMenuStyle.cs
- InputLangChangeEvent.cs
- TemplatedWizardStep.cs
- InternalControlCollection.cs
- GraphicsPath.cs
- BamlReader.cs
- DirectoryObjectSecurity.cs
- ValidationHelper.cs
- TargetControlTypeCache.cs
- TreeNodeStyleCollection.cs
- SQLGuidStorage.cs
- SqlNodeTypeOperators.cs
- CorrelationInitializer.cs
- PackWebRequest.cs
- ReadOnlyDictionary.cs
- TextSelectionHighlightLayer.cs
- PanelDesigner.cs
- SignatureSummaryDialog.cs
- StatusBarPanel.cs
- DesignerDataTableBase.cs
- DetailsViewDeletedEventArgs.cs
- XPathBinder.cs
- ScaleTransform3D.cs
- StringKeyFrameCollection.cs
- VirtualPathUtility.cs
- GestureRecognizer.cs
- LinqDataSourceDeleteEventArgs.cs
- ValueTable.cs
- ErrorTableItemStyle.cs
- MulticastNotSupportedException.cs
- SwitchExpression.cs
- ListChunk.cs
- WindowAutomationPeer.cs
- EdmComplexTypeAttribute.cs
- GroupBoxDesigner.cs
- FileDialogCustomPlacesCollection.cs
- VerticalAlignConverter.cs
- HwndProxyElementProvider.cs
- OdbcConnectionString.cs
- RangeContentEnumerator.cs
- EntitySqlQueryCacheEntry.cs
- ReflectTypeDescriptionProvider.cs
- TimerElapsedEvenArgs.cs
- NetworkStream.cs
- EntityTransaction.cs
- TypeRefElement.cs
- ContentPropertyAttribute.cs
- ProcessHost.cs
- StyleModeStack.cs
- TimelineClockCollection.cs
- WorkflowItemPresenter.cs
- ContractReference.cs
- MenuItemStyle.cs
- FlowDocumentReader.cs
- ProcessThread.cs
- SimpleNameService.cs
- CompressEmulationStream.cs
- ReadOnlyDictionary.cs
- ObjectTag.cs
- TextDecoration.cs
- AppliedDeviceFiltersEditor.cs
- ContextCorrelationInitializer.cs
- NativeMethods.cs
- DataViewManager.cs
- EventProviderWriter.cs
- BinaryObjectWriter.cs
- ApplyTemplatesAction.cs
- CurrentTimeZone.cs
- ListDictionaryInternal.cs
- PriorityChain.cs
- NumericUpDown.cs
- ChtmlPageAdapter.cs
- CurrentTimeZone.cs
- TabPage.cs
- ObjectMemberMapping.cs
- Header.cs
- baseaxisquery.cs
- ObjectStateFormatter.cs
- SoapMessage.cs
- TableLayoutPanel.cs
- ClientRequest.cs
- StreamingContext.cs
- ParseNumbers.cs
- CqlLexerHelpers.cs