Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / Util / SimpleRecyclingCache.cs / 3 / SimpleRecyclingCache.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* * SimpleRecyclingCache class * * Copyright (c) 1999 Microsoft Corporation */ namespace System.Web.Util { using System.Collections; /* * The purpose of this class is to provide a simple and efficient cache. * Instead of using fancy logic to expire items, it uses a simple heuristic: * when the number of entry reaches a fixed limit, the cache is reset. */ internal class SimpleRecyclingCache { private const int MAX_SIZE = 100; private static Hashtable _hashtable; internal SimpleRecyclingCache() { CreateHashtable(); } // Create or recreate the hastable private void CreateHashtable() { _hashtable = new Hashtable(MAX_SIZE, StringComparer.OrdinalIgnoreCase); } internal object this[object key] { get { return _hashtable[key]; } set { lock (this) { // The limit was reached, so reset everything if (_hashtable.Count >= MAX_SIZE) _hashtable.Clear(); _hashtable[key] = value; } } } } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ComponentChangingEvent.cs
- SiteMapNodeCollection.cs
- DependentTransaction.cs
- DesignerDataTableBase.cs
- DockProviderWrapper.cs
- Table.cs
- XmlSchemaGroup.cs
- FormViewCommandEventArgs.cs
- MobileCategoryAttribute.cs
- PolicyException.cs
- XPathDocumentNavigator.cs
- WebPartConnectionsCancelVerb.cs
- Compiler.cs
- CellParagraph.cs
- RayHitTestParameters.cs
- HtmlAnchor.cs
- SelectionRangeConverter.cs
- SequentialUshortCollection.cs
- UInt16Storage.cs
- EmbeddedMailObjectsCollection.cs
- FullTextState.cs
- SafeNativeMethodsMilCoreApi.cs
- DataServiceRequestOfT.cs
- ToolboxComponentsCreatingEventArgs.cs
- MexBindingBindingCollectionElement.cs
- FormViewPageEventArgs.cs
- OleDbError.cs
- PolygonHotSpot.cs
- XmlNodeChangedEventManager.cs
- HttpHeaderCollection.cs
- SerializerDescriptor.cs
- Sentence.cs
- XmlSchemaChoice.cs
- IndependentAnimationStorage.cs
- BaseHashHelper.cs
- TemplateBindingExpressionConverter.cs
- AssemblyNameProxy.cs
- HtmlWindowCollection.cs
- cache.cs
- TitleStyle.cs
- _RequestCacheProtocol.cs
- Run.cs
- ContextMenu.cs
- HostingEnvironmentWrapper.cs
- ValueQuery.cs
- WebHttpSecurityElement.cs
- SimpleApplicationHost.cs
- Pair.cs
- ConfigurationManagerHelper.cs
- ListViewCancelEventArgs.cs
- UdpDiscoveryEndpointElement.cs
- ZipIOLocalFileDataDescriptor.cs
- SetState.cs
- ByteConverter.cs
- HtmlObjectListAdapter.cs
- SerializationStore.cs
- ValidationPropertyAttribute.cs
- ConstraintStruct.cs
- EnterpriseServicesHelper.cs
- ConfigurationValidatorBase.cs
- InternalBufferManager.cs
- streamingZipPartStream.cs
- DoubleCollectionConverter.cs
- InstanceData.cs
- ConfigurationException.cs
- ExcludeFromCodeCoverageAttribute.cs
- WSDualHttpBindingCollectionElement.cs
- IItemContainerGenerator.cs
- LocalBuilder.cs
- BaseResourcesBuildProvider.cs
- Classification.cs
- CanonicalizationDriver.cs
- GregorianCalendarHelper.cs
- ReflectEventDescriptor.cs
- NonBatchDirectoryCompiler.cs
- XPathDocumentIterator.cs
- DataViewListener.cs
- CqlLexerHelpers.cs
- _ProxyRegBlob.cs
- ComMethodElement.cs
- BatchParser.cs
- HwndKeyboardInputProvider.cs
- TextFormatter.cs
- _FixedSizeReader.cs
- CachedFontFamily.cs
- HtmlTableRowCollection.cs
- ViewGenResults.cs
- StylusSystemGestureEventArgs.cs
- GridViewColumnHeader.cs
- SelectedDatesCollection.cs
- ExpandCollapseProviderWrapper.cs
- ExpressionBindingCollection.cs
- UserNameSecurityTokenProvider.cs
- XmlQueryContext.cs
- TreeViewImageGenerator.cs
- GPRECT.cs
- Queue.cs
- UIElement.cs
- _CacheStreams.cs
- ResourceReferenceKeyNotFoundException.cs