Возвращается установка текущего внутреннего программного Кэша (PROGCACHE). Данная установка определяет размер памяти для запуска программ.

SYS(3065 [, 1])

Параметры

1

Возвращается общий размер памяти, занятый загруженными программами.

Expand imageВозвращаемое значение

Числовое. Возвращается текущая установка PROGCACHE, определенная в файле конфигурации. Если параметр не указан, то возвращается следующее значение: (-2 для MTDLL, в другом случае: 144).

Expand imageПример

В следующем примере демонстрируется , как Вы можете превысить текущий программный Кэш в системе Visual FoxPro, и, тем самым спровоцировать Ошибку 1202. Если определить параметр PROGCACHE=0 в файле конфигурации config.fpw, то данная ошибка не происходит.

  CopyCode imageКопировать Код
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

Expand imageСм. также