首页 / 软件开发 / JAVA / ejb与java序列化(2) 测试代码
ejb与java序列化(2) 测试代码2011-01-22接上篇,有兴趣的朋友可以直接拿我的测试代码自行测试,请自行修改诸如线程数,执行时间,序列化的数据量大小等参数。如果想尝试做thread dump,可以打开相关的两个注释,会更方便一些,代码中都有相应的注释可供参考。测试代码如下:package test;import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.ObjectOutputStream;
import java.io.Serializable;
import java.util.ArrayList;public class Test implements Runnable {
//Notice! set the three test parameter to what you want first
/**
* thread count to run test
*/
private static final int THREAD_COUNT = 50;
/**
* time in seconds to run test
*/
private static final long TEST_TIME_SECOND = 1 * 30;
/**
* during test, we serialize a Data instance with an ArrayList that contains DataItem instance.
* This is to set how many DataItem in the ArrayList.
*/
private static final long ITEMS_COUNT_IN_TEST_OBJECT = 1000;
private static int finishedCount = 0;
private static boolean needStop = false;
private static Object needStopLock = new Object();
private static Object finishedCountLock = new Object();private static boolean isNeedStop() {
synchronized (needStopLock) {
return needStop;
}
}private static void setNeedStop() {
synchronized (needStopLock) {
needStop = true;
}
}private static void addFinisedCount() {
synchronized (finishedCountLock) {
finishedCount++;
}
}