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++; } }