I left my program open for 9 hours and it used up 700mb of ram, could someone review it?

Rikki Cattermole via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Tue Jan 27 13:36:44 PST 2015


On 28/01/2015 9:59 a.m., Gan wrote:
> On Tuesday, 27 January 2015 at 19:59:08 UTC, Gan wrote:
>> On Tuesday, 27 January 2015 at 19:26:12 UTC, bearophile wrote:
>>> Gan:
>>>
>>>> Is there some special stuff I gotta do extra with structs? Do they
>>>> need manually allocated and released?
>>>
>>> Most of your usages of tiny structs should be by value. So just keep
>>> in mind they are values. Even when you iterate with a foreach on a
>>> mutable array of them :-)
>>>
>>>
>>>> On a second question, do I ever need to manually release objects I
>>>> create with new?
>>>
>>> Usually not. How much advanced do you want to be? :-)
>>>
>>> Bye,
>>> bearophile
>>
>> Thanks. I'll give structs a try.
>>
>> When I start the program, it runs fine at 35mb of ram. It only keeps
>> 15 objects stored in the arrays at a time so why do you think my ram
>> usage increases to 700+ after many hours?
>
> Curiously, my CPU usage went from 10% to 5% after I changed to structs
> on Point and Range. Though my memory still climbs high.

Force a GC.collect() now and again. Disable it at the beginning too.


More information about the Digitalmars-d-learn mailing list