Finding available memory without shell, how to use hasMemory()

Gabriel Johnson gwjapp at gmail.com
Wed Feb 26 14:21:46 EST 2014


Thanks for the responses. Yes, we are saving a 100+ MB data file to disk,
and when the free memory gets to be under 100 MB, saving to a standard hard
drive (not SSD) sometimes ends up taking a very long time (in Mac OS X),
making it appear to the user that the program has locked up. We have
contemplated going about this a different way, but the quickest fix for us
at the moment is to catch low memory situations.

Mark: Yes, we need to know the amount of free ram (without counting the
swap/inactive memory).


Gabe Johnson
gwjapp at gmail.com
603-978-9881


On Sun, Feb 23, 2014 at 9:09 PM, Mark Wieder <mwieder at ahsoftware.net> wrote:

> Gabriel-
>
> Thursday, February 20, 2014, 11:07:59 AM, you wrote:
>
> > Hey All,
>
> > I am working on a program where I need to know the amount of available
> > memory.
>
> > I'm running on OS X and hasMemory() appears to return true/false for the
> > same values regardless changes to free/available memory. Is there some
> > trick to getting hasMemory() to correspond with the actual available
> > memory? Is this possibly something that is being addressed in newer
> > versions of LiveCode?
>
> Ah, the curse of modern operating systems...
>
> What the hasMemory() function does is allocate and then free the
> specified amount of memory, and then returns a boolean telling whether
> it was successful. However, before doing that, it casts the desired
> amount as a uint4, which limits the amount to 2147483647. If you're
> trying to see if more than 2G of memory is available, that won't help.
> And because modern operating systems will very happily exchange chunks
> of memory out to swap files when necessary, it's unlikely that you'll
> see the malloc fail, and thus you should see a "true" return value.
>
> Are you doing something where you really need to see the actual free
> ram without the swap/inactive memory? The "available" term here is a
> bit ambiguous, and depends on your needs.
>
> --
> -Mark Wieder
>  ahsoftware at gmail.com
>
> This communication may be unlawfully collected and stored by the National
> Security Agency (NSA) in secret. The parties to this email do not
> consent to the retrieving or storing of this communication and any
> related metadata, as well as printing, copying, re-transmitting,
> disseminating, or otherwise using it. If you believe you have received
> this communication in error, please delete it immediately.
>
>
> _______________________________________________
> use-livecode mailing list
> use-livecode at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode
>



More information about the use-livecode mailing list