SYS(3065) - Internal Program Cache
Returns the current internal program cache (PROGCACHE) setting. This setting determines the amount of memory available to run programs.
SYS(3065 [, 1])
Returns
Numeric. Returns the current PROGCACHE setting specified in the configuration file. If no setting is specified, the default is returned (-2 for MTDLL, otherwise 144).
Parameters
- 1
Returns the total memory of all loaded programs.
Sample
The following sample shows how you can exceed the default Visual FoxPro program cache and cause an Error 1202 to occur. If you specify a PROGCACHE=0 setting in your config.fpw file, no error occurs.
CLEAR ALL
LOCAL lcBigStr,lcSafe
ON KEY LABEL F5 ? SYS(3065)+" "+SYS(3065,1)
? SYS(3065)+" "+SYS(3065,1)
SET TEXTMERGE ON NOSHOW
SET TEXTMERGE TO MEMVAR lcBigStr
FOR i = 1 TO 39000
\ x="<<REPLICATE('a ',120)>>"
ENDFOR
SET TEXTMERGE to
? LEN(lcBigStr)
lcSafe=SET("Safety")
SET SAFETY OFF
STRTOFILE(lcBigStr,"bigprg.prg")
SET SAFETY &lcSafe
COMPILE bigprg
DO bigprg
? SYS(3065)+" "+SYS(3065,1)
ON KEY LABEL F5