diff --git a/chronicle-demo/src/main/java/vanilla/java/tutorial/DirectAccess.java b/chronicle-demo/src/main/java/vanilla/java/tutorial/DirectAccess.java index 5c8aa3ce0e..ff3069f669 100644 --- a/chronicle-demo/src/main/java/vanilla/java/tutorial/DirectAccess.java +++ b/chronicle-demo/src/main/java/vanilla/java/tutorial/DirectAccess.java @@ -23,8 +23,7 @@ import net.openhft.chronicle.ExcerptTailer; import net.openhft.lang.model.Byteable; -import java.io.IOException; -import java.util.Date; +import java.util.Random; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.TimeUnit; @@ -38,41 +37,92 @@ public class DirectAccess { // // ************************************************************************* - public static void main(String[] ignored) { - final int items = 1000; - final String path = System.getProperty("java.io.tmpdir") + "/direct-access"; - //final StockPrice price = newDirectReference(StockPrice.class); - //appender.position(price.maxSize()); + public static void main(String[] ignored) throws Exception { + final int items = 100; - final StockPrice price = newDirectInstance(StockPrice.class); - price.bytes().position(price.maxSize()); + appendWithDirectInstance(items); + appendWithDirectReference(items); + } + + // ************************************************************************* + // + // ************************************************************************* + + private static void appendWithDirectInstance(final int items) throws Exception { + final int readers = items / 10; + + final String path = System.getProperty("java.io.tmpdir") + "/direct-instance"; + final Event event = newDirectInstance(Event.class); try (Chronicle chronicle = ChronicleQueueBuilder.vanilla(path).build()) { chronicle.clear(); ExcerptAppender appender = chronicle.createAppender(); - for(int i=0;i