Significantly improve memory usage when rendering zoom levels #21
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Disposing of bitmaps made the biggest impact here. They must have been hanging on to file locks or something. Right now everything is bitmap in this area. In the future if you add other image types, it would probably be good to add IDisposable to your interface, and dispose of all images instead of just bitmaps.
I also added code to force garbage collection, which looks like it helps a little. I think it is frowned upon to try to manage the garbage collector, but since we know this is the peak memory usage point, I think it's okay to do it here.
(Fixes #12) (Fixes #20)