THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
单线程
循环开n个线程
大小为n的线程池
四种读文件模式:(文件大小80M,每次读取位置随机)
每个线程从同一个文件读一次(读取位置随机,下同)每个线程从同一个文件读一次
每个线程从同一个文件不断读取
每个线程从不同文件读读一次
...
readBufferSize 设置为 6 M, 无论 maxCachedBufferSize 大小如何设置,都直接OOM
实验2:readBufferSize
...
< MaxDirectMemorySize,readBufferSize > maxCachedBufferSize
static long maxCachedBufferSize = 1024 * 1024 * 1;
static int readBufferSize = 1024 * 1024 * 2;
...
static int threadNum = 100;
发生OOM,只剩下两个线程活跃,其他线程驻留
实验3:readBufferSize
...
< MaxDirectMemorySize,readBufferSize < maxCachedBufferSize
static long maxCachedBufferSize = 1024 * 1024 * 2;
static int readBufferSize = 1024 * 1024 * 1;
...