[Date Prev][Date Next][Subject Prev][Subject Next][ Date Index][ Subject Index]

Re: memory use



 Please tell me if anything is wrong to avoid memory problems and optimice
the XPL scripts:

--Better to use U2 frames for the several routines, with small independent
framenames, than independent progs, especially if loaded in startup.int and
if they are big sized (I used to acumulate several routines in one file, but
now I see the entire file is loaded, while only a small part of it is
usedl!!)
--Built another U2 (FISHOUT) to manage textual content save-gates.
--Avoid initialice unnecesary variables.
--Avoid big starting sgt, or put only reminders instead of the script, (only
for XY3+, otherwise... everything in the U2!)
--Try to use va@m6+ routines to detect the danger when a program reaches
the 26K (less??) used memory level, trying, then, to free memory with the
metods you show.

Two questions here:
  --Is usefull (if for any reason is needed to keep a big starting sgt,
people in XY3+ without U2), to save the current sgt in a temp.sgt file just
in the programs begin( with BC stsgt tmp.sgt), then use CLRSGT (to empty all
of the @ sgts) and only at the end of the program re-load temp.sgt (BC ldsgt
tmp.sgt)?? If this really empty the memory used by @-sgts during programs
running, may keep a sgt full during non-program use of XY (writting,
reading, etc).
  --Is it usefull to try allways to re-use a started sgt (3 digits, 2 or
@ ) instead of a new save-gate? Or this may un-clean the memory and perhaps
hang-up the computer if you 'abuse' ?

Measures to free memory in runtime program:

-Run U2 rutine to un-initialize save gates
-Execute U2 ClearSgt program.
-Execute BC CLRSGT XC to clear the @ save-gates or/and BC CLRASGT ... for
both & and @ save-gates or/and CLRXSGT to clear all the tree-digit
programing save-gates.
-Run KILLMEM.PM to wipe the so-called special sgts (mistery... would them
belong to a future version allready partly developed?)

  A question here:
-Can BC RUN EMPTY.PM XC (when EMPTY.PM is an empty file) help anything to
wipe the last runned program from buffer?? Or that last runned program is
already wiped by the running program?
    -- Is there any way to do somethig like that with the last called
frames from help or U2 etc (to call a nearly empty frame would wipe big
frames called before?) But you Robert, said that usually remain several
frames --3, 4--, not only the last one used!)
    --The same for the Cut/paste buffer??

  Other questions
-Open big files or many files use anything of the memory buffers or they use
only the remaining memory? (Abandone them helps to free memory for the
program running?)
-Dos acces to execute external programs or dos commands use any memory
buffer or only the remaining memory?
  Its a pity to let all this knowledge without a more sistematic script.
If my english wasn't so poor (I apologize everybody...) I would like to
compile all of this, there are a lot of tecnics you already know, specially
included in the U2, many defects in programming can be corrected.

Francisco.


 Robert said

----- Original Message -----
From: "Robert Holmgren" 
To: 
Sent: Sunday, June 29, 2003 1:36 PM
Subject: Re: memory use


> ** Reply to message from Harry Binswanger  on Sat, 28 Jun
2003
> 21:27:33 -0400
>
>
> >> when you trigger OOM, you're screwed: there's usually no way to get
Editor
> >> back on good behavior -- you gotta save your work, quit, and relaunch.
>
> > Yeah, so I've learned. And you can't even necessarily know that it was
an
> > OOM error.
>
> Occasionally. But almost always you know, the symptoms are unmistakable:
> things that have no excuse for not working, suddenly don't work. Or
Editor
> tells you there's not enough memory, or bells start sounding. In which
case,
> take a look at  -- it will be up around 28Kb, 32Kb -- too high.
Time
> to relaunch and refresh.
>
> -----------------------------
> Robert Holmgren
> holmgren@xxxxxxxx
> -----------------------------
>
>