[code.view]

[top] / python / PyMOTW / gc / gc_threshold.py

     #!/usr/bin/env python
     # encoding: utf-8
     #
     # Copyright (c) 2010 Doug Hellmann.  All rights reserved.
     #
     """Tuning the garbage collector threshold.
     """
     #end_pymotw_header
     
     import gc
     import pprint
     import sys
     
     try:
         threshold = int(sys.argv[1])
     except (IndexError, ValueError, TypeError):
         print 'Missing or invalid threshold, using default'
         threshold = 5
     
     class MyObj(object):
         def __init__(self, name):
             self.name = name
             print 'Created', self.name
     
     gc.set_debug(gc.DEBUG_STATS)
     
     gc.set_threshold(threshold, 1, 1)
     print 'Thresholds:', gc.get_threshold()
     
     print 'Clear the collector by forcing a run'
     gc.collect()
     print
     
     print 'Creating objects'
     objs = []
     for i in range(10):
         objs.append(MyObj(i))
     

[top] / python / PyMOTW / gc / gc_threshold.py

contact | logmethods.com