Mathematica 9 is now available
THIS IS DOCUMENTATION FOR AN OBSOLETE PRODUCT.
SEE THE DOCUMENTATION CENTER FOR THE LATEST INFORMATION.
Mathematica > 核心语言 > 调整和调试 > 内存测量和优化 > ByteCount >
Mathematica > 系统界面与配置 > Mathematica 会话 > Mathematica 会话信息 > 内存测量和优化 > ByteCount >

ByteCount

ByteCount[expr]
给出 Mathematica 内部存放 expr 所需的字节数.
  • ByteCount 不考虑子表达式共用的情况. 其给出的结果假设表达式的每部分都是单独储存的. 因此 ByteCount 往往给出一个表达式所需内存量的过高估计. 对表达式进行操作时,子表达式通常会停止共用,这样,所需的内存量将会接近于 ByteCount 返回的值.  »
  • 在不同的计算机系统上,ByteCount 的结果可能不尽相同.
获得用于存放一个表达式的字节数:
为不同类型的表达式绘制 ByteCount
获得用于存放一个表达式的字节数:
In[1]:=
Click for copyable input
Out[1]=
In[2]:=
Click for copyable input
Out[2]=
 
为不同类型的表达式绘制 ByteCount
In[1]:=
Click for copyable input
Out[1]=
In[2]:=
Click for copyable input
Out[2]=
In[3]:=
Click for copyable input
Out[3]=
积分序列存储量的增长:
Simplify 选取有着最小 ByteCount 的表达式:
LeafCount 不计算出数的大小:
存放符号元素比存放数列需要更多的内存量:
在此范例所用的计算机系统中,每个常规整数占用4个字节:
近似数需要双倍的量:
ByteCount 在实际存放表达式时假设所有子表达式都不共用:
符号总是有效地共用,所以得到 0 字节:
对于 ASCII 串,平均每个字符 ByteCount 增长 1:
平均每个 Unicode 字符需要添加2个字节:
对于整数,在超出机器数时有一次跳跃:
平均增长率大约是每十进制数字 0.4 字节:
列表中的每个元素实际增加了一个内部指针:
MemoryConstrained 可中止超出指定 ByteCount 的表达式的生成:
小变化也可能对内存的使用产生较大的影响:
精确数 的出现防止数据被压缩:
对于外部对象,ByteCount 仅给出句柄的大小:
版本 1 的新功能
Ask a question about this page  |  Suggest an improvement  |  Leave a message for the team
格式:   HTML  |  CDF