Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Net / System / Net / _Semaphore.cs / 1305376 / _Semaphore.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- #pragma warning disable 618 namespace System.Net { using System; using System.Threading; using System.Security.Permissions; // used for Connection Pooling internal sealed class Semaphore : WaitHandle { internal Semaphore(int initialCount, int maxCount) : base() { lock (this) { // Handle = UnsafeNclNativeMethods.CreateSemaphore(IntPtr.Zero, initialCount, maxCount, IntPtr.Zero); } } /* // Consider removing. public Semaphore(int initialCount, int maxCount, string name) : base() { lock (this) { // */ internal bool ReleaseSemaphore() { #if DEBUG int previousCount; bool success = UnsafeNclNativeMethods.ReleaseSemaphore(Handle, 1, out previousCount); GlobalLog.Print("ReleaseSemaphore#"+ValidationHelper.HashString(this)+" success:"+success+" previousCount:"+previousCount.ToString()); return success; #else return UnsafeNclNativeMethods.ReleaseSemaphore(Handle, 1, IntPtr.Zero); #endif } /* // Consider removing. internal bool ReleaseSemaphore(int releaseCount, out int previousCount) { return UnsafeNclNativeMethods.ReleaseSemaphore(Handle, releaseCount, out previousCount); } */ } } // 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
- ClientTargetSection.cs
- SQLByteStorage.cs
- Pair.cs
- ObjectDataSourceFilteringEventArgs.cs
- SQLDouble.cs
- ParseHttpDate.cs
- TargetInvocationException.cs
- DataShape.cs
- ActivityExecutorSurrogate.cs
- OracleCommandSet.cs
- MenuItemBindingCollection.cs
- UnionQueryOperator.cs
- CookieParameter.cs
- ConnectionInterfaceCollection.cs
- SiteMapNode.cs
- SqlRowUpdatingEvent.cs
- RemoveStoryboard.cs
- WebHeaderCollection.cs
- WebDisplayNameAttribute.cs
- NewExpression.cs
- KeyPressEvent.cs
- Visual.cs
- TemplatedControlDesigner.cs
- SqlMethodAttribute.cs
- ArgumentNullException.cs
- ConstraintEnumerator.cs
- WorkflowQueue.cs
- XmlKeywords.cs
- ResourceBinder.cs
- DataTemplate.cs
- PersonalizationState.cs
- StateChangeEvent.cs
- SmiContextFactory.cs
- WhitespaceRule.cs
- OutputCacheProfileCollection.cs
- DesigntimeLicenseContext.cs
- SaveFileDialog.cs
- ClientConfigurationSystem.cs
- JsonSerializer.cs
- ResXResourceReader.cs
- RuntimeConfig.cs
- XmlDownloadManager.cs
- UnionCodeGroup.cs
- ObjectView.cs
- ColorContext.cs
- TargetConverter.cs
- DocumentViewerBase.cs
- AuthorizationRule.cs
- SafePEFileHandle.cs
- AtomPub10ServiceDocumentFormatter.cs
- GrammarBuilderWildcard.cs
- Operand.cs
- ScriptComponentDescriptor.cs
- TableStyle.cs
- TogglePattern.cs
- OAVariantLib.cs
- EditorZoneBase.cs
- RowVisual.cs
- SourceSwitch.cs
- BamlReader.cs
- BaseValidator.cs
- ControlCachePolicy.cs
- SchemaElementLookUpTable.cs
- IResourceProvider.cs
- SystemIcmpV4Statistics.cs
- InspectionWorker.cs
- Rect3DValueSerializer.cs
- ToolStripItemEventArgs.cs
- HostedImpersonationContext.cs
- InvalidateEvent.cs
- OracleRowUpdatingEventArgs.cs
- Rules.cs
- NonVisualControlAttribute.cs
- SqlCacheDependencyDatabase.cs
- WindowPatternIdentifiers.cs
- Compiler.cs
- HttpHandlersSection.cs
- RuntimeConfig.cs
- EmptyEnumerator.cs
- ParseNumbers.cs
- RealProxy.cs
- SmtpSpecifiedPickupDirectoryElement.cs
- PageParserFilter.cs
- SqlGenerator.cs
- DetailsViewInsertEventArgs.cs
- HtmlFormWrapper.cs
- LocalizableAttribute.cs
- ApplicationSecurityManager.cs
- ExitEventArgs.cs
- DefaultSettingsSection.cs
- TagMapCollection.cs
- DataGridViewDataConnection.cs
- ValueCollectionParameterReader.cs
- XPathParser.cs
- DataTemplateSelector.cs
- RepeaterItemCollection.cs
- XmlDocumentSerializer.cs
- HtmlForm.cs
- Image.cs
- MenuItemCollection.cs