有时候,在做一些压力测试的时候,我们需要发送一些一定大小的数据来做测试,比如1K的数据来做测试,但是如何才能知道自己发送的数据的大小呢,在C中比较多的是使用sizeof(xxx),在java中,之前有通过Runtime来获取系统内存,执行完语句之后,再通过Runtime来获取内存,做差求大小,这个大家可以通过google搜索查看,这里介绍的是sourceforge的SizeOf.java
1.下载
http://sourceforge.net/projects/sizeof/
2.编写测试,并设定vm,如下:
-javaagent:"D:\projects\Test\WebRoot\WEB-INF\lib\SizeOf.jar"
3.执行代码,查看效果
String str = "abc";
System.out.println(SizeOf.deepSizeOf(str));
System.out.println(SizeOf.humanReadable(SizeOf.deepSizeOf(str)));
System.out.println(SizeOf.humanReadable(SizeOf.deepSizeOf(new Integer(65535))));
执行结果如下:
JAVAGENT: call premain instrumentation for class SizeOf
72
72.0b
744.0b
具体可参考sourceforge
http://sizeof.sourceforge.net/
分享到:
相关推荐
NULL 博文链接:https://spice.iteye.com/blog/1104340
NULL 博文链接:https://312256159-qq-com.iteye.com/blog/1582196
对象大小 获取一个JavaScript对象的大小(以字节为单位) JavaScript不提供sizeof(类似于C语言),并且程序员无需关心内存分配/重新分配。 但是,根据,每个String值均由16位无符号整数表示,Number使用双精度64...
原项目下载地址:http://sourceforge.net/projects/sizeof/ ...1、将SizeOf.jar放到Eclipse工程路径下,添加到classpath中; 2、运行前添加VM参数:-javaagent:lib/SizeOf.jar 运行即可(将jar放在lib路径下)。
sizeof 计算出实例的大小这个类库基本上就是用反射(reflection)来得到类的内部细节,从而计算出其实例的大小。同样,也是用反射来遍历对象图来计算其deep size。
大小 用法: var sizeOf = require("sizeOf"); sizeOf.sizeOf("foo"); sizeOf.sizeOfDeep({foo: { bar: 1}});
java-sizeof-0.0.4:一个查看java对象占用内存大小
50 loc),无依赖库,用于计算内存中 javascript 对象的粗略大小。 安装 npm install js-sizeof 用法 var sizeof = require ( 'js-sizeof' ) ; var obj = { floop : 0 , gloop : 'gloop!' , ploop : [ 1 , 2 ,...
实际上,用sizeof来返回类型以及静态分配的对象、结构或数组所占的空间,返回值跟对象、结构、数组所存储的内容没有关系。 strlen(...)是函数,要在运行时才能计算。参数必须是字符型指针(char*)。当数组名作为...
涉及各种情况下C++对象的sizeof大小,包括单一类对象,继承,重复继承 多继承 单一虚继承 等各种情况下的对象大小。对C++对象内存布局有清楚了解。
一个SizeOf.jar.
sizeof(...)是运算符,在头文件中typedef为unsigned int,其值在编译时即计算好了,参数可以是数组、指针、类型、对象、函数等。 它的功能是:获得保证能容纳实现所建立的最大对象的字节大小。 strlen(...)是函数...
用于测量 Java 对象内存大小的 Java 库。 import com.arturmkrtchyan.sizeof4j.util.ConsoleUtil ; import static java.lang.System.out ; class Main { public static void main ( String [] args ) { ...
这是 Scala/Java 的内存消耗估算器。 这个库是从项目移植的。 依赖 ###Sbt libraryDependencies += ...对于任何对象,通过调用估计对象大小 SizeEstimator.estimate(obj); 有关更多示例,请查看示例文件夹。
sizeof 运算符 产生与 char 类型的大小有关的操作数大小。 语法 sizeof unary-expression sizeof ( type-name ) 备注 sizeof 运算符的结果为 size_t 类型,它是...当 sizeof 运算符应用到 char 类型的对象时,它将生
一、sizeof sizeof(…)是运算符,在头文件中typedef为unsigned int,其值在编译时即计算好了,参数可以是数组、指针、类型、对象、函数等。 它的功能是:获得保证能容纳实现所建立的最大对象的字节大小。 由于在...
把单一元素的数组放在一个struct的尾端,于是每个 struct objects 可以拥有可变大小的数组: struct mumble { char pc[1]; }; //获取一个字符串,然后为struct本身和该字符串配置足够的内存 struct mumble *pmumbl...
这个类实现了DES算法,如果你的数据块data的大小sizeof(data)是8的倍数 的话,可以使用函数DES::encrypt(key,data,sizeof(data)/8)来进行加密, 用DES::decrypt(key,data,sizeof(data)/8)来进行解密。 如果数据块的...
并且sizeof计算的是数据类型占内存的大小,而strlen计算的是字符串实际的长度。 *数组做sizeof的参数不退化,传递给strlen就退化为指针了。* ## C中的malloc和C++中的new有什么区别 malloc和new有以下不同: ...
一个指向char类型的const对象指针,p不是常量,我们可以修改p的值,使其指向不同的char,但是不能改变它指向非char对象,如: const char *p; char c1='a'; char c2='b'; p=&c1;//ok p=&c2;//ok *p=c1;//error (2)...