Hello, On Thu, Jan 14, 2010 at 12:55:02AM +0900, Chuck Remes wrote: >>> Does anyone have any suggestions on how to force these unused objects >>> to get GC'ed? This program needs to run a long time so a memory leak >>> is absolutely fatal. (snip) > I have a method that makes a function call on the COM object > (#request_data). When the function has data to return, it generates a > "DataResolved" event which triggers my callback which was registered > once at the beginning of execution. The callback calls #save and loops > through the collection and pulls some properties into a hash which then > gets inserted into mongodb. When the collection is exhausted, I go back > to #request_data and make another call on the COM object to request the > next batch. How about calling GC.start before requesting the next batch? # If you had used GC.start already, ignore this suggestion. Regards, Masaki Suketa