#!/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))