• 0

Reduce .NET app RAM usage


Question

Recommended Posts

  • 0
  Tom Servo said:
Well, what about an option based on my dialog proposal?

Make a dialog that shows up on first run that explains the memory management **** in easy words and then two radio buttons that allow you to choose to use the "memory preserving" option (SetProcessWorkingSetSize) or not.

very good idea actually.....mind if I use it?

  • 0

thanks, for the sake of the laregly n00b crowdthat uses my program, I will only put the option in the options dialog so they don't have to even touch it unless they want to. If I provide a dialog on first run, forget it, half of them will freak lol.

  • 0

Make it a small dialog like

"This is the first time you run this application. Do you want to run this application optimized for enhanced stability or optimized for memory consumption? [LinkLabel]Click here for details.

( ) Stability ( ) Memory"

  • 0

yeah I know, just my g/f is one of those people so when I code, I code for someone with her mindset (meaning how the finished product works), we so I'll have to think about it. What I could just do is put it "stability mode" by default and just let them find the option if they are worried that much. We'll see. I have some time before the next release. Real life work has to come before some freeware project I'm doing. Best Buy is consuming all my time right now. Thanks for the idea though Tom.

  • 0

The dialog's a good idea. BUT I don't think it's a good idea to tell the users you're optimizing for either memory usage or stability. That's a crappy choice to have to make. Though that's really what you're doing, it might be better to phrase it differently.

Maybe a better way would be to grade optimization from none to very aggressive (after all, you don't need to call SetProcessWorkingSetSize with -1,-1; you can give it different values), with the caveat that the more aggressive settings may cause stability problems.

--

Danny Smurf

  • 0

Everybody remember that SetWorkingSetSize only works on NT-based OSes. You'll want to get the OS platform using System.Enviroment to detect whether the function exists and should be called.

However, I am not sure if you can do that. When a VB.NET app starts, does it check the export tables of the referenced DLLs to check if the needed functions exist? I am interested in this too. :)

  • 0

Or you could use:

Process.GetCurrentProcess().MinWorkingSet and

Process.GetCurrentProcess().MaxWorkingSet

Those are the .NET way of accomplishing the same thing, and most likely will just ignore Windows 98 (rather than having to implement a check yourself).

--

Danny Smurf

  • 0
  dannysmurf said:
Or you could use:

Process.GetCurrentProcess().MinWorkingSet and

Process.GetCurrentProcess().MaxWorkingSet

Those are the .NET way of accomplishing the same thing, and most likely will just ignore Windows 98 (rather than having to implement a check yourself).

--

Danny Smurf

Oh yeah! It probably would actually throw an exception on Windows 98 and ME, but thats easier because that can just be stuck in a Try block. :)

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • Mass Image Compressor 4.0.2 by Razvan Serea Mass Image Compressor is a fast and easy-to-use Windows app that helps you compress, resize, and convert large sets of images quickly. The tool supports various formats including JPEG, PNG, WebP, AVIF, and GIF (including animated images), and offers precise control over output quality, image dimensions, and file naming schemes. You can reduce file sizes while keeping good quality, change image dimensions, and rename files in batches. Users can filter or preserve metadata such as EXIF, IPTC, and XMP—including selectively removing GPS or serial number information. With features like drag-and-drop, Explorer integration, multiple output folder options, and lossless optimization tools like OxiPNG and pngquant, Mass Image Compressor is ideal for photographers, designers, and developers. Features Compress multiple folders and files in one go (including optional subfolders) Seamless Windows Explorer integration via the "Send To" menu Advanced metadata copy settings (EXIF, XMP, IPTC) with filtering (e.g., strip GPS, serial numbers) Full support for Animated Images (GIF, PNG, WebP) Output to modern formats like WebP and AVIF Regex filters for filenames and size-based exclusions Suffix/Prefix options and filename text replacement for output files Powerful Preview UI with pixel-level image comparison (CTRL + T) Robust and faster RAW image support Multiple flexible output destination modes: Replace original files Output to specific folder Store next to original with suffix/prefix Inside a Compressed subfolder Flexible resizing: By percentage Long edge, fixed width/height Frame-based for print or responsive image sets (1x/2x/3x) Mass Image Compressor 4.0.2 release notes: Major Release: 4.x Series Rewritten from the ground up Complete rewrite using a modern architecture for improved scalability, performance, and responsive UI. Expanded format support: Input: JPG, PNG, WebP, TIFF, GIF, BMP, AVIF, HEIC, JP2, RAW (ARW, DNG, NEF, CR2, CR3, CRW, DCR, KDC, MRW, ORF, RAF, PEF, RW2, SRW, ERF, 3FR, MOS, MEF). Output: JPG, PNG, WebP, AVIF, GIF. New features: Animated image handling (e.g., animated WebP and GIF) Side-by-side preview for compression comparison File filters by extension, size, and visibility Multi-file drag and drop Gallery view modes for better browsing Rich compression settings (quality, resizing strategies, naming rules) Flexible output management (replace originals, custom folders, or preserve structure) Smart conflict handling with detailed warnings Throttled task scheduling for smoother UI Improved metadata support with options to preserve or exclude (e.g., GPS, camera info) Dependency Updates & Stability Magick.NET-Q8-OpenMP-x64 updated from 14.5.0 to 14.7.0 (resolves hang and security issues) Microsoft App SDK updated from 1.6.250108002 to 1.7.250606001 (stability improvements) Download: Mass Image Compressor 4.0.2 | 81.9 MB (Open Source) Download: Mass Image Compressor Portable | 114.0 MB View: Mass Image Compressor Home Page | Github | Screenshot Get alerted to all of our Software updates on Twitter at @NeowinSoftware
    • I wasn't mad. Sorry if I made it sound like that. Everyone is different. PERIOD.
    • Of course there are distros that are more beginner (an actual word) friendly and have less setup/configuration out of the box. This is really your argument? There is no reason to be mad because someone said they wouldn't recommend your favorite distro to a certain type of user. Are you committed to revenge now even if it takes a lifetime or something? LOL As a community we really need to move past this. New Linux users need to be helped. In the Linux subreddits the advise is even worse. So many come asking what distro to use. Sometimes they don't mention what they use their computer for and there will be 20 comments of not one person asking that and just listing the distro they personally use. That helps no one. One pet peeve of mine is sometimes one will ask what DE they should use for distro and mention they have been using Windows for 30 years. GNOME is not the damn answer! That doesn't mean GNOME is not a good DE. Understand what I am saying?
    • A lot of throwback names listed there 😀
  • Recent Achievements

    • One Year In
      Schwarzenbach earned a badge
      One Year In
    • Collaborator
      NullReference earned a badge
      Collaborator
    • Dedicated
      John Volks earned a badge
      Dedicated
    • One Month Later
      KenKay earned a badge
      One Month Later
    • Week One Done
      KenKay earned a badge
      Week One Done
  • Popular Contributors

    1. 1
      +primortal
      660
    2. 2
      ATLien_0
      250
    3. 3
      Xenon
      178
    4. 4
      neufuse
      153
    5. 5
      +FloatingFatMan
      126
  • Tell a friend

    Love Neowin? Tell a friend!