clear

Удалите элементы из рабочей области, освободив системную память

Описание

clear удаляет все переменные из текущей рабочей области, выпуская их от системной памяти.

пример

clear name1 ... nameN удаляет переменные, скрипты, функции или MEX-функции name1 ... nameN из памяти.

пример

clear -regexp expr1 ... exprN удаляет все переменные, которые совпадают с любым из перечисленных регулярных выражений. Эта опция только удаляет переменные.

пример

clear ItemType удаляет типы элементов, обозначенных ItemType, такой как allФункции, или classes.

Примеры

свернуть все

Задайте две переменные a и b, и затем очистите a.

a = 1;
b = 2;
clear a

Только переменная b остается в рабочей области.

whos
  Name      Size            Bytes  Class     Attributes

  b         1x1                 8  double              

Используя регулярные выражения, очистите те переменные с именами, которые начинаются с Mon, Tue, или Wed.

clear -regexp ^Mon ^Tue ^Wed;

Создайте массив ячеек, vars, это содержит имена переменных, чтобы очиститься. Затем очистите те переменные.

vars = {'v1','v2','time'};
clear(vars{:})

Если функция заблокирована или в настоящее время рабочая, она не очищена из памяти.

clear functions

Входные параметры

свернуть все

Имена переменных, скриптов, функций или MEX-функций, чтобы очиститься в виде одного или нескольких векторов символов или строковых скаляров.

Если name isa:

  • Функция, затем clear повторно инициализирует любые персистентные переменные в функции. Определение локальной или вложенной функции не поддержано.

  • Скрипт или функция, которая является выполняющимся в данным моментом или функцией, заблокированной mlock, затем clear не удаляет его.

  • Глобальная переменная, затем clear удаляет его из текущей рабочей области, но это остается в глобальной рабочей области. Чтобы удалить глобальную переменную из всех рабочих областей, используйте clear global variable.

Используйте частичный путь, чтобы различать различные перегруженные версии функции. Например, clear polynom/display очищает только display метод для polynom объекты, оставляя любые другие реализации в памяти.

Регулярные выражения, совпадающие с именами переменных, чтобы очиститься в виде одного или нескольких векторов символов или строковых скаляров.

Тип элементов, чтобы очиститься в виде одного из следующих.

Значение ItemTypeОчищенные элементыПримечания
Переменные в осциллографеСкрипты и функцииОпределения классовПерсистентные переменныеMEX-функцииГлобальные переменныеСписок импортаКлассы Java на динамическом пути

all

 От командной строки только 

Вызов clear all производительность кода уменьшений, и является обычно ненужной. Для получения дополнительной информации смотрите раздел Tips.

classes

 

Вызов clear classes производительность кода уменьшений, и является обычно ненужной. Для получения дополнительной информации смотрите раздел Tips.

Чтобы инстанцировать объекта с обновленным определением класса, не необходимо вызвать clear classes. Когда вы изменяете определение класса, MATLAB® обновляет его автоматически. Для получения дополнительной информации смотрите Автоматические обновления для Модифицированных классов.

clear classes выдает предупреждение и не очищает класс объектов, если какой-либо из тех объектов все еще существует после того, как рабочая область очищена. Например, объекты могут все еще существовать в персистентных переменных функций или окон рисунка. 

clear classes не очищает класс, если его файл заблокирован с помощью mlock команда. Никакое предупреждение не выдано в этом случае.

functions

     

Вызов clear functions производительность кода уменьшений, и является обычно ненужной. Для получения дополнительной информации смотрите раздел Tips.

global

       

clear global удаляет все глобальные переменные в текущих и глобальных рабочих областях. Например, когда названо от функции, clear global удаляет все глобальные переменные в функциональных и глобальных рабочих областях, но не в базовом рабочем пространстве.

import

       

Вызовите clear import только от командной строки. Вызов clear import в функции или скрипте возвращает ошибку.

java

  

clear java выдает предупреждение и не удаляет определение класса Java, если какой-либо из его объектов Java существует вне рабочей области (например, в пользовательских данных или персистентных переменных в заблокированном файле кода).

Выпустите clear java команда после изменения любых файлов на динамическом пути Java.

mex

       

clear mex не очищает заблокированные MEX-функции или функции, которые используются в настоящее время.

variables

        

Примечание

Если имя переменной является значением ItemType, затем вызов clear сопровождаемый тем именем удаляет переменную с тем именем. clear не интерпретирует имя как ключевое слово в этом контексте. Например, если рабочая область содержит переменные aвсеB, и ball, clear all удаляет переменную all только.

Советы

  • Вызов clear all, clear classes, и clear functions производительность кода уменьшений, и является обычно ненужной.

    • Чтобы очистить одну или несколько определенных переменных из текущей рабочей области, используйте ясный name1 ... nameN.

    • Чтобы очистить все переменные из текущей рабочей области, используйте clear или clearvars

    • Чтобы очистить все глобальные переменные, используйте clear global или clearvars –global.

    • Чтобы очистить конкретный класс, используйте ясный myClass.

    • Чтобы очистить конкретную функцию или скрипт, используйте ясный functionName.

    • Чтобы очистить все MEX-функции, используйте clear mex.

  • clear функция может удалить переменные, которые вы задаете. Чтобы удалить все кроме нескольких заданных переменных, используйте clearvars вместо этого.

  • Если вы очищаете указатель фигуры или графического объекта, сам объект не удален. Используйте delete удалить объекты. С другой стороны, удаление объекта не удаляет переменную (если таковые имеются) используемый в хранении ее указателя.

  • clear функция не очищает модели Simulink®. Используйте bdclose вместо этого.

  • clear функция не очищает персистентные переменные в локальных или вложенных функциях.

  • В системах UNIX®, clear не влияет на объем памяти, выделенный процессу MATLAB.

Представлено до R2006a