Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Data / System / Data / Odbc / OdbcEnvironment.cs / 1305376 / OdbcEnvironment.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //[....] //----------------------------------------------------------------------------- using System; using System.Data; using System.Data.Common; using System.Threading; namespace System.Data.Odbc { sealed internal class OdbcEnvironment { static private object _globalEnvironmentHandle; static private object _globalEnvironmentHandleLock = new object(); private OdbcEnvironment () {} // default const. static internal OdbcEnvironmentHandle GetGlobalEnvironmentHandle() { OdbcEnvironmentHandle globalEnvironmentHandle = _globalEnvironmentHandle as OdbcEnvironmentHandle; if(null == globalEnvironmentHandle) { ADP.CheckVersionMDAC(true); lock(_globalEnvironmentHandleLock) { globalEnvironmentHandle = _globalEnvironmentHandle as OdbcEnvironmentHandle; if(null == globalEnvironmentHandle) { globalEnvironmentHandle = new OdbcEnvironmentHandle(); _globalEnvironmentHandle = globalEnvironmentHandle; } } } return globalEnvironmentHandle; } static internal void ReleaseObjectPool() { object globalEnvironmentHandle = Interlocked.Exchange(ref _globalEnvironmentHandle, null); if(null != globalEnvironmentHandle) { (globalEnvironmentHandle as OdbcEnvironmentHandle).Dispose(); // internally refcounted so will happen correctly } } } } // 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
- EventMappingSettings.cs
- BitmapEffectInput.cs
- BitmapFrame.cs
- EncryptedXml.cs
- X509RawDataKeyIdentifierClause.cs
- StringFunctions.cs
- DialogDivider.cs
- DisposableCollectionWrapper.cs
- SortedList.cs
- DataGridViewHitTestInfo.cs
- CompositionDesigner.cs
- AdPostCacheSubstitution.cs
- AggregateNode.cs
- DataGridViewAdvancedBorderStyle.cs
- ResourceIDHelper.cs
- Context.cs
- ISFTagAndGuidCache.cs
- XmlSchemaException.cs
- DLinqAssociationProvider.cs
- SvcMapFile.cs
- SqlNodeAnnotations.cs
- XamlPointCollectionSerializer.cs
- FunctionDescription.cs
- TransactionOptions.cs
- WebPartConnectVerb.cs
- SqlConnectionFactory.cs
- HttpConfigurationSystem.cs
- SchemaTableColumn.cs
- BoundField.cs
- TextCollapsingProperties.cs
- IncomingWebResponseContext.cs
- EntityEntry.cs
- SamlAttribute.cs
- WeakReferenceKey.cs
- Query.cs
- TemplatedMailWebEventProvider.cs
- TokenCreationException.cs
- CachedRequestParams.cs
- Header.cs
- SiteMapNodeItemEventArgs.cs
- WeakReferenceKey.cs
- Convert.cs
- VectorValueSerializer.cs
- TabPageDesigner.cs
- WinEventQueueItem.cs
- AxisAngleRotation3D.cs
- InstancePersistenceCommandException.cs
- ImageListStreamer.cs
- BinaryObjectInfo.cs
- KnownTypes.cs
- BaseCodeDomTreeGenerator.cs
- DrawListViewColumnHeaderEventArgs.cs
- SqlFactory.cs
- DBConnection.cs
- EditingCommands.cs
- AssemblyEvidenceFactory.cs
- ServiceModelExtensionCollectionElement.cs
- ChineseLunisolarCalendar.cs
- BitmapSizeOptions.cs
- HostingEnvironmentSection.cs
- TraceContextEventArgs.cs
- RepeatButton.cs
- FormViewInsertedEventArgs.cs
- CodeSubDirectory.cs
- DataGridViewCellFormattingEventArgs.cs
- ProxyGenerator.cs
- RequestTimeoutManager.cs
- XmlNodeReader.cs
- PointCollectionConverter.cs
- XmlBinaryWriter.cs
- ResourceCategoryAttribute.cs
- DataSetUtil.cs
- Table.cs
- LOSFormatter.cs
- PanelStyle.cs
- SecurityAlgorithmSuiteConverter.cs
- ParsedRoute.cs
- RewritingPass.cs
- ProfileGroupSettingsCollection.cs
- PropertyPathConverter.cs
- LayoutInformation.cs
- PersonalizableAttribute.cs
- TextElementEnumerator.cs
- ProfileBuildProvider.cs
- TextFindEngine.cs
- FontFamilyIdentifier.cs
- DesignTimeResourceProviderFactoryAttribute.cs
- WebServiceResponse.cs
- CqlIdentifiers.cs
- SessionEndingCancelEventArgs.cs
- WebBrowserUriTypeConverter.cs
- ConfigXmlCDataSection.cs
- XmlName.cs
- errorpatternmatcher.cs
- DataBoundControlHelper.cs
- TableLayoutSettingsTypeConverter.cs
- SchemaExporter.cs
- ClientViaElement.cs
- WebPartMovingEventArgs.cs
- MarshalDirectiveException.cs