The Labs \ Source Viewer \ SSCLI \ System \ InsufficientMemoryException

  1. // ==++==
  2. //
  3. //
  4. // Copyright (c) 2006 Microsoft Corporation. All rights reserved.
  5. //
  6. // The use and distribution terms for this software are contained in the file
  7. // named license.txt, which can be found in the root of this distribution.
  8. // By using this software in any fashion, you are agreeing to be bound by the
  9. // terms of this license.
  10. //
  11. // You must not remove this notice, or any other, from this software.
  12. //
  13. //
  14. // ==--==
  15. /*=============================================================================
  16. **
  17. ** Class: InsufficientMemoryException
  18. **
  19. **
  20. ** Purpose: The exception class for running out of memory
  21. ** but most likely in a non-fatal way that shouldn't
  22. ** be affected by escalation policy.  Use this for cases
  23. ** like MemoryFailPoint or a TryAllocate method, where you
  24. ** expect OOM's with no shared state corruption and you
  25. ** want to recover from these errors.
  26. **
  27. **
  28. =============================================================================*/
  29. namespace System
  30. {
  31.    
  32.     using System;
  33.     using System.Runtime.Serialization;
  34.    
  35.     [Serializable()]
  36.     public sealed class InsufficientMemoryException : OutOfMemoryException
  37.     {
  38.         public InsufficientMemoryException() : base(GetMessageFromNativeResources(ExceptionMessageKind.OutOfMemory))
  39.         {
  40.             SetErrorCode(__HResults.COR_E_INSUFFICIENTMEMORY);
  41.         }
  42.        
  43.         public InsufficientMemoryException(string message) : base(message)
  44.         {
  45.             SetErrorCode(__HResults.COR_E_INSUFFICIENTMEMORY);
  46.         }
  47.        
  48.         public InsufficientMemoryException(string message, Exception innerException) : base(message, innerException)
  49.         {
  50.             SetErrorCode(__HResults.COR_E_INSUFFICIENTMEMORY);
  51.         }
  52.        
  53.         private InsufficientMemoryException(SerializationInfo info, StreamingContext context) : base(info, context)
  54.         {
  55.         }
  56.     }
  57. }

Developer Fusion