MATLAB Function Reference | ![]() ![]() |
Remove items from workspace, freeing up system memory
Graphical Interface
As an alternative to the clear
function, use Clear Workspace in the MATLAB desktop Edit menu, or in the context menu in the Workspace browser.
Syntax
clear
clear name
clear name1 name2 name3 ...
clear global name
clear keyword
clear('name1','name2','name3',...)
Description
clear
removes all variables from the workspace. This frees up system memory.
clear name
removes just the M-file or MEX-file function or variable name
from the workspace. You can use wildcards (*
) to remove items selectively. For example, clear my*
removes any variables whose names begin with the string my
. It removes debugging breakpoints in M-files and reinitializes persistent variables, since the breakpoints for a function and persistent variables are cleared whenever the M-file is changed or cleared. If name
is global, it is removed from the current workspace, but left accessible to any functions declaring it global. If name
has been locked by mlock
, it remains in memory.
Use a partial path to distinguish between different overloaded versions of a function. For example, clear inline/display
clears only the display
method for inline
objects, leaving any other implementations in memory.
clear name1 name2 name3 ...
removes name1
, name2
, and name3
from the workspace.
clear global name
removes the global variable name
. If name
is global, clear name
removes name
from the current workspace, but leaves it accessible to any functions declaring it global. Use clear global name
to completely remove a global variable.
clear
clears the items indicated by keyword
keyword
.
clear('name1','name2','name3',...)
is the function form of the syntax. Use this form when the variable name or function name is stored in a string.
Remarks
When you use clear
in a function, it has the following effect on items in your function and base workspaces:
clear name
--If name
is the name of a function, the function is cleared in both the function workspace and in your base workspace.
clear
functions
--All functions are cleared in both the function workspace and in your base workspace.
clear
global
--All global variables are cleared in both the function workspace and in your base workspace.
clear
all
--All functions, global variables, and classes are cleared in both the function workspace and in your base workspace.
Limitations
clear
does not affect the amount of memory allocated to the MATLAB process under UNIX.
Examples
Given a workspace containing the following variables
Name Size Bytes Class c 3x4 1200 cell array frame 1x1 java.awt.Frame gbl1 1x1 8 double array (global) gbl2 1x1 8 double array (global) xint 1x1 1 int8 array
you can clear a single variable, xint
, by typing
To clear all global variables, type
To clear all compiled M- and MEX-functions from memory, type clear functions
. In the case shown below, clear functions
was unable to clear one M-file function from memory, testfun
, because the function is locked.
clear functions % Attempt to clear all functions.inmem
ans = 'testfun' % One M-file function remains in memory.mislocked
testfun ans = 1 % This function is locked in memory.
Once you unlock the function from memory, you can clear it.
munlock
testfun
clear functions
inmem
ans =
Empty cell array: 0-by-1
See Also
clc
, close
, import
, mlock
, munlock
, pack
, persistent
, who
, whos
![]() | clc | clear (serial) | ![]() |