view src/main/java/jp/ac/u_ryukyu/ie/cr/tatsuki/xml/FJTreeMapSetTime.java @ 18:190890be73e4

TreeMap memory and TreeMap get
author one
date Fri, 26 Dec 2014 12:04:00 +0900
parents 917ecf2c7350
children 17cc11b04157
line wrap: on
line source

package jp.ac.u_ryukyu.ie.cr.tatsuki.xml;

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Random;

import fj.Ord;
import fj.data.Option;
import fj.data.TreeMap;

public class FJTreeMapSetTime {

  public static void main(String args[]) throws IOException {
    System.out.println("putaaa");
    File putFile = new File("./time/fjPut");
    PrintWriter putPw = new PrintWriter(new BufferedWriter(new FileWriter(putFile)));
    File getFile = new File("./time/fjGet");
    PrintWriter getPw = new PrintWriter(new BufferedWriter(new FileWriter(getFile)));
    TreeMap<Integer, Integer> map = TreeMap.empty(Ord.intOrd);
    long t1 = 0;
    long t2 = 0;
    long t3 = 0;
    long t4 = 0;
    for (int count = 0; count <= 30000; count++) {
      t1 = System.currentTimeMillis();
      map = map.set(count, count);
      t2 = System.currentTimeMillis();
      if (count % 100 == 0 && count != 0) {
        System.out.println("put time " + count + " " + (t2 - t1));
        long sum = 0;
        for (int count1 = 0; count1 < 20; count1++) {
          Random ran = new Random();
          int getValue = ran.nextInt(count);
          t3 = System.currentTimeMillis();
          Option<Integer> op = map.get(getValue);
          t4 = System.currentTimeMillis();
          sum = sum + (t4 - t3);
        }
        System.out.println("get time = " + (sum / 20));
        putPw.println(count + " " + (t2 - t1));
        getPw.println(count + " " + (sum / 20));
      }
    }
    putPw.close();
    getPw.close();
  }

}