Package org.directmemory.misc

Source Code of org.directmemory.misc.Reader

package org.directmemory.misc;
import java.io.IOException;
import java.util.Map;

import org.directmemory.CacheEntry;
import org.javasimon.SimonManager;
import org.javasimon.Split;
import org.javasimon.Stopwatch;


public class Reader extends Thread {
 
  public Map<String, CacheEntry> map;
 
  @Override
  public void run() {
//    long started = Calendar.getInstance().getTimeInMillis();
   
        Stopwatch readerMon = SimonManager.getStopwatch("readerMon");
    Stopwatch deserializeMon = SimonManager.getStopwatch("deserializeMon");

//    System.out.println("reader thread started");
    int count = 0;
    for (CacheEntry entry : map.values()) {
      Split split = readerMon.start();
      //System.out.println(entry.key + " of size" + entry.size);
      byte[] dest = new byte[entry.size];
      synchronized (entry.buffer) {
        entry.buffer.position(entry.position);
        entry.buffer.get(dest);
      }
      split.stop();
      try {
        Split deserSplit = deserializeMon.start();
        @SuppressWarnings("unused")
        DummyPojo obj = Starter.deserialize(dest);
        deserSplit.stop();
//        System.out.println(obj.getName() + " count=" + count);
      } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
      } catch (ClassNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
      }
      count++;
    }
   
//        System.out.println(readerMon.sample());
   
//    long elapsed = Calendar.getInstance().getTimeInMillis()-started;
//    System.out.println("reader did " + count + " reads in " + (elapsed) + " msecs - " + ((double)count / (double)elapsed) + " ops per msec");
//    System.out.println("reader ops took " + ((double)elapsed / (double)count) + " msecs each");
  }
}
TOP

Related Classes of org.directmemory.misc.Reader

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.