Уплотнение памяти (MemoryConserve). Работа с пакетами расширений (Package).
Подпакет MemoryConserve в дополнение к имеющейся в ядре функции освобождения памяти Share [ ] содержит две директивы управления памятью:
- On [MemoryConserve] – включает автоматическое сжатие занимаемой системой памяти;
- Off [MemoryConserve] – отключает автоматическое сжатие памяти.
Ниже демонстрируется применение этого подпакета:
<
<
Utilities
'MemoryConserve'
$MemoryIncrement
100000
Table[ ToString[
0
], {
2
^
15
} ];
Length[
%
]
MemoryConserve::start: Running Share[] to conserve memory.
MemoryConserve::
end
: Finished running Share[];
929200
bytes of memory freed.
32768
Off[ MemoryConserve ]
On[ MemoryConserve ]
Данная утилита полезна лишь при использовании системы Mathematica на компьютерах с малым объемом оперативной памяти.
Работа с пакетами расширений (Package)
В подпакете Package имеется несколько функций, полезных при работе с пакетами расширения:
- FindPackages [path] – возвращает список файлов с расширением .m, имеющихся в каталоге path. Опция FullPath › True дает возврат полных (вместе с путем) имен файлов;
- FindPackages [path, pattern] – возвращает список файлов с расширением .m, имеющихся в каталоге path и удовлетворяющих заданному образцу pattern;
- Annotation [package] – возвращает список ключевых слов, содержащихся в аннотации пакета;
- Annotation [package, keyword] – возвращает текст аннотации пакета, связанной с ключевым словом keyword.
Примеры работы с этими функциями:
<
<
Utilities
'Package'
FindPackages[$Path,
"*ca"
]
{{}, {}, {}, {DiscreteMath
'Combinatorica'
}, {}}
FindPackages[$Path,
"*ca"
,
FullPath
>
True
]
{{},(},{},
{
/
usr
/
local
/
mathematica
/
AddOns
/
StandardPackages
/
DiscreteMath
/
Combinatorica.m}, {}}
Annotation[
"Utilities'Package'"
]
{Title, Context, Author, Summary, Package Version, Mathematica Version,
Copyright, History, Keywords, Limitations, Discussion}
Annotation[
"Utilities'Package'"
,
"Mathematica Version"
]
{(
*
:Mathematica Version:
4.0
*
)}