diff --git a/src/main/java/org/agilewiki/jactor/JAMailboxFactory.java b/src/main/java/org/agilewiki/jactor/JAMailboxFactory.java index d138a523..70651152 100644 --- a/src/main/java/org/agilewiki/jactor/JAMailboxFactory.java +++ b/src/main/java/org/agilewiki/jactor/JAMailboxFactory.java @@ -24,7 +24,6 @@ package org.agilewiki.jactor; import java.util.ArrayList; -import java.util.Iterator; import java.util.List; import java.util.Timer; diff --git a/src/main/java/org/agilewiki/jactor/apc/APCMailbox.java b/src/main/java/org/agilewiki/jactor/apc/APCMailbox.java index 8d2ea402..ab328b06 100644 --- a/src/main/java/org/agilewiki/jactor/apc/APCMailbox.java +++ b/src/main/java/org/agilewiki/jactor/apc/APCMailbox.java @@ -27,7 +27,6 @@ import org.agilewiki.jactor.bufferedEvents.BufferedEventsDestination; import org.agilewiki.jactor.events.EventQueue; -import java.util.ArrayList; import java.util.List; /** diff --git a/src/main/java/org/agilewiki/jactor/lpc/JLPCActor.java b/src/main/java/org/agilewiki/jactor/lpc/JLPCActor.java index e3a53dff..a631f134 100644 --- a/src/main/java/org/agilewiki/jactor/lpc/JLPCActor.java +++ b/src/main/java/org/agilewiki/jactor/lpc/JLPCActor.java @@ -23,7 +23,6 @@ */ package org.agilewiki.jactor.lpc; -import java.util.ArrayList; import java.util.List; import org.agilewiki.jactor.Actor; diff --git a/src/main/java/org/agilewiki/jactor/parallel/JAResponseCounter3.java b/src/main/java/org/agilewiki/jactor/parallel/JAResponseCounter3.java index 24b3d613..46c3ce02 100644 --- a/src/main/java/org/agilewiki/jactor/parallel/JAResponseCounter3.java +++ b/src/main/java/org/agilewiki/jactor/parallel/JAResponseCounter3.java @@ -25,7 +25,6 @@ import org.agilewiki.jactor.RP; -import java.util.ArrayList; import java.util.List; /** diff --git a/src/test/java/org/agilewiki/jactor/counterTest/CounterTest.java b/src/test/java/org/agilewiki/jactor/counterTest/CounterTest.java index 08851c85..8fe9c628 100644 --- a/src/test/java/org/agilewiki/jactor/counterTest/CounterTest.java +++ b/src/test/java/org/agilewiki/jactor/counterTest/CounterTest.java @@ -2,6 +2,10 @@ import junit.framework.TestCase; import org.agilewiki.jactor.*; +import org.agilewiki.jactor.JAFuture; +import org.agilewiki.jactor.JAMailboxFactory; +import org.agilewiki.jactor.Mailbox; +import org.agilewiki.jactor.MailboxFactory; /** * Test code. @@ -65,4 +69,33 @@ public void testUnshared() throws Exception { mailboxFactory.close(); } } + + public void testAsync() throws Exception { + + long runs = 100; + +// [java-async] Number of runs: 10000000 +// [java-async] Count: 1000000000 +// [java-async] Test time in seconds: 7.598 +// [java-async] Messages per second: 1316135.8252171625 + + MailboxFactory mailboxFactory = JAMailboxFactory.newMailboxFactory(10); + try { + CounterActor counterActor = new CounterActor(); + counterActor.initialize(mailboxFactory.createAsyncMailbox()); + Driver driver = new Driver(); + driver.initialize(mailboxFactory.createMailbox(), counterActor, runs); + JAFuture future = new JAFuture(); + long start = System.currentTimeMillis(); + Long count = (Long) SimpleRequest.req.send(future, driver); + long finish = System.currentTimeMillis(); + double elapsedTime = (finish - start) / 1000.; + System.out.println("[java-async] Number of runs: " + runs); + System.out.println("[java-async] Count: " + count); + System.out.println("[java-async] Test time in seconds: " + elapsedTime); + System.out.println("[java-async] Messages per second: " + runs / elapsedTime); + } finally { + mailboxFactory.close(); + } + } } diff --git a/src/test/java/org/agilewiki/jactor/counterTest/Driver.java b/src/test/java/org/agilewiki/jactor/counterTest/Driver.java index 4b155add..e3a6195a 100644 --- a/src/test/java/org/agilewiki/jactor/counterTest/Driver.java +++ b/src/test/java/org/agilewiki/jactor/counterTest/Driver.java @@ -2,6 +2,9 @@ import org.agilewiki.jactor.*; import org.agilewiki.jactor.lpc.JLPCActor; +import org.agilewiki.jactor.JAIterator; +import org.agilewiki.jactor.Mailbox; +import org.agilewiki.jactor.RP; import org.agilewiki.jactor.simpleMachine.ObjectFunc; import org.agilewiki.jactor.simpleMachine.SimpleMachine; import org.agilewiki.jactor.simpleMachine._Operation; diff --git a/src/test/java/org/agilewiki/jactor/lpc/EventTest.java b/src/test/java/org/agilewiki/jactor/lpc/EventTest.java index b839a507..78179e48 100644 --- a/src/test/java/org/agilewiki/jactor/lpc/EventTest.java +++ b/src/test/java/org/agilewiki/jactor/lpc/EventTest.java @@ -2,6 +2,10 @@ import junit.framework.TestCase; import org.agilewiki.jactor.*; +import org.agilewiki.jactor.JAFuture; +import org.agilewiki.jactor.JAMailboxFactory; +import org.agilewiki.jactor.MailboxFactory; +import org.agilewiki.jactor.RP; /** * Test code. diff --git a/src/test/java/org/agilewiki/jactor/lpc/calculatorTest/CalculatorTest.java b/src/test/java/org/agilewiki/jactor/lpc/calculatorTest/CalculatorTest.java index eac396a9..f008c26d 100644 --- a/src/test/java/org/agilewiki/jactor/lpc/calculatorTest/CalculatorTest.java +++ b/src/test/java/org/agilewiki/jactor/lpc/calculatorTest/CalculatorTest.java @@ -2,6 +2,10 @@ import junit.framework.TestCase; import org.agilewiki.jactor.*; +import org.agilewiki.jactor.JAFuture; +import org.agilewiki.jactor.JAMailboxFactory; +import org.agilewiki.jactor.Mailbox; +import org.agilewiki.jactor.MailboxFactory; /** * Test code. diff --git a/src/test/java/org/agilewiki/jactor/lpc/timingTest/AsyncMailboxTest.java b/src/test/java/org/agilewiki/jactor/lpc/timingTest/AsyncMailboxTest.java index bfe01aa3..dc380837 100644 --- a/src/test/java/org/agilewiki/jactor/lpc/timingTest/AsyncMailboxTest.java +++ b/src/test/java/org/agilewiki/jactor/lpc/timingTest/AsyncMailboxTest.java @@ -8,12 +8,12 @@ */ public class AsyncMailboxTest extends TestCase { public void testTiming() { - int c = 2; - int b = 3; + int c = 1000000; + int b = 1; int p = 1; - int t = 1; + int t = 8; - //System.out.println("####################################################"); + System.out.println("####################################################"); //int c = 500; //int b = 1000; //int p = 1000; diff --git a/src/test/java/org/agilewiki/jactor/lpc/timingTest/Sender.java b/src/test/java/org/agilewiki/jactor/lpc/timingTest/Sender.java index d768652e..6c9a6baf 100644 --- a/src/test/java/org/agilewiki/jactor/lpc/timingTest/Sender.java +++ b/src/test/java/org/agilewiki/jactor/lpc/timingTest/Sender.java @@ -2,6 +2,9 @@ import org.agilewiki.jactor.*; import org.agilewiki.jactor.lpc.JLPCActor; +import org.agilewiki.jactor.Actor; +import org.agilewiki.jactor.JAIterator; +import org.agilewiki.jactor.RP; /** * Test code. diff --git a/src/test/java/org/agilewiki/jactor/lpc/timingTest/Sender1.java b/src/test/java/org/agilewiki/jactor/lpc/timingTest/Sender1.java index f970e1e3..89ca6b08 100644 --- a/src/test/java/org/agilewiki/jactor/lpc/timingTest/Sender1.java +++ b/src/test/java/org/agilewiki/jactor/lpc/timingTest/Sender1.java @@ -2,6 +2,9 @@ import org.agilewiki.jactor.*; import org.agilewiki.jactor.lpc.JLPCActor; +import org.agilewiki.jactor.Actor; +import org.agilewiki.jactor.JAIterator; +import org.agilewiki.jactor.RP; /** * Test code. diff --git a/src/test/java/org/agilewiki/jactor/lpc/timingTest/SharedMailboxTest.java b/src/test/java/org/agilewiki/jactor/lpc/timingTest/SharedMailboxTest.java index ecfaab2f..ba402b95 100644 --- a/src/test/java/org/agilewiki/jactor/lpc/timingTest/SharedMailboxTest.java +++ b/src/test/java/org/agilewiki/jactor/lpc/timingTest/SharedMailboxTest.java @@ -8,12 +8,12 @@ */ public class SharedMailboxTest extends TestCase { public void testTiming() { - int c = 1; + int c = 1000000; int b = 1; int p = 1; int t = 1; - //System.out.println("####################################################"); + System.out.println("####################################################"); //int c = 1000; //int b = 1000; //int p = 1000; diff --git a/src/test/java/org/agilewiki/jactor/simpleMachine/CallTest.java b/src/test/java/org/agilewiki/jactor/simpleMachine/CallTest.java index b0a1c033..422baa0c 100644 --- a/src/test/java/org/agilewiki/jactor/simpleMachine/CallTest.java +++ b/src/test/java/org/agilewiki/jactor/simpleMachine/CallTest.java @@ -3,6 +3,10 @@ import junit.framework.TestCase; import org.agilewiki.jactor.*; import org.agilewiki.jactor.lpc.JLPCActor; +import org.agilewiki.jactor.JAFuture; +import org.agilewiki.jactor.JAMailboxFactory; +import org.agilewiki.jactor.MailboxFactory; +import org.agilewiki.jactor.RP; /** * Test code. diff --git a/src/test/java/org/agilewiki/jactor/simpleMachine/GotoTest.java b/src/test/java/org/agilewiki/jactor/simpleMachine/GotoTest.java index 745e71e3..9896d239 100644 --- a/src/test/java/org/agilewiki/jactor/simpleMachine/GotoTest.java +++ b/src/test/java/org/agilewiki/jactor/simpleMachine/GotoTest.java @@ -3,6 +3,10 @@ import junit.framework.TestCase; import org.agilewiki.jactor.*; import org.agilewiki.jactor.lpc.JLPCActor; +import org.agilewiki.jactor.JAFuture; +import org.agilewiki.jactor.JAMailboxFactory; +import org.agilewiki.jactor.MailboxFactory; +import org.agilewiki.jactor.RP; /** * Test code. diff --git a/src/test/java/org/agilewiki/jactor/simpleMachine/IfFTest.java b/src/test/java/org/agilewiki/jactor/simpleMachine/IfFTest.java index c52af3fc..0ca1d361 100644 --- a/src/test/java/org/agilewiki/jactor/simpleMachine/IfFTest.java +++ b/src/test/java/org/agilewiki/jactor/simpleMachine/IfFTest.java @@ -3,6 +3,10 @@ import junit.framework.TestCase; import org.agilewiki.jactor.*; import org.agilewiki.jactor.lpc.JLPCActor; +import org.agilewiki.jactor.JAFuture; +import org.agilewiki.jactor.JAMailboxFactory; +import org.agilewiki.jactor.MailboxFactory; +import org.agilewiki.jactor.RP; /** * Test code. diff --git a/src/test/java/org/agilewiki/jactor/simpleMachine/IfVTest.java b/src/test/java/org/agilewiki/jactor/simpleMachine/IfVTest.java index 584cb584..cb29f57e 100644 --- a/src/test/java/org/agilewiki/jactor/simpleMachine/IfVTest.java +++ b/src/test/java/org/agilewiki/jactor/simpleMachine/IfVTest.java @@ -3,6 +3,10 @@ import junit.framework.TestCase; import org.agilewiki.jactor.*; import org.agilewiki.jactor.lpc.JLPCActor; +import org.agilewiki.jactor.JAFuture; +import org.agilewiki.jactor.JAMailboxFactory; +import org.agilewiki.jactor.MailboxFactory; +import org.agilewiki.jactor.RP; /** * Test code. diff --git a/src/test/java/org/agilewiki/jactor/simpleMachine/IteratorTest.java b/src/test/java/org/agilewiki/jactor/simpleMachine/IteratorTest.java index 8c462ddc..71ca9785 100644 --- a/src/test/java/org/agilewiki/jactor/simpleMachine/IteratorTest.java +++ b/src/test/java/org/agilewiki/jactor/simpleMachine/IteratorTest.java @@ -3,6 +3,10 @@ import junit.framework.TestCase; import org.agilewiki.jactor.*; import org.agilewiki.jactor.lpc.JLPCActor; +import org.agilewiki.jactor.JAFuture; +import org.agilewiki.jactor.JAMailboxFactory; +import org.agilewiki.jactor.MailboxFactory; +import org.agilewiki.jactor.RP; /** * Test code. diff --git a/src/test/java/org/agilewiki/jactor/simpleMachine/ReturnFTest.java b/src/test/java/org/agilewiki/jactor/simpleMachine/ReturnFTest.java index b6b81653..88b78dc8 100644 --- a/src/test/java/org/agilewiki/jactor/simpleMachine/ReturnFTest.java +++ b/src/test/java/org/agilewiki/jactor/simpleMachine/ReturnFTest.java @@ -3,6 +3,10 @@ import junit.framework.TestCase; import org.agilewiki.jactor.*; import org.agilewiki.jactor.lpc.JLPCActor; +import org.agilewiki.jactor.JAFuture; +import org.agilewiki.jactor.JAMailboxFactory; +import org.agilewiki.jactor.MailboxFactory; +import org.agilewiki.jactor.RP; /** * Test code. diff --git a/src/test/java/org/agilewiki/jactor/simpleMachine/ReturnVTest.java b/src/test/java/org/agilewiki/jactor/simpleMachine/ReturnVTest.java index 9459bd40..cc13a993 100644 --- a/src/test/java/org/agilewiki/jactor/simpleMachine/ReturnVTest.java +++ b/src/test/java/org/agilewiki/jactor/simpleMachine/ReturnVTest.java @@ -3,6 +3,10 @@ import junit.framework.TestCase; import org.agilewiki.jactor.*; import org.agilewiki.jactor.lpc.JLPCActor; +import org.agilewiki.jactor.JAFuture; +import org.agilewiki.jactor.JAMailboxFactory; +import org.agilewiki.jactor.MailboxFactory; +import org.agilewiki.jactor.RP; /** * Test code. diff --git a/src/test/java/org/agilewiki/jactor/simpleMachine/SendVFTest.java b/src/test/java/org/agilewiki/jactor/simpleMachine/SendVFTest.java index e47215b3..bc9f800e 100644 --- a/src/test/java/org/agilewiki/jactor/simpleMachine/SendVFTest.java +++ b/src/test/java/org/agilewiki/jactor/simpleMachine/SendVFTest.java @@ -3,6 +3,10 @@ import junit.framework.TestCase; import org.agilewiki.jactor.*; import org.agilewiki.jactor.lpc.JLPCActor; +import org.agilewiki.jactor.JAFuture; +import org.agilewiki.jactor.JAMailboxFactory; +import org.agilewiki.jactor.MailboxFactory; +import org.agilewiki.jactor.RP; /** * Test code. diff --git a/src/test/java/org/agilewiki/jactor/simpleMachine/SendVVTest.java b/src/test/java/org/agilewiki/jactor/simpleMachine/SendVVTest.java index 5e0c18cb..47ef89a5 100644 --- a/src/test/java/org/agilewiki/jactor/simpleMachine/SendVVTest.java +++ b/src/test/java/org/agilewiki/jactor/simpleMachine/SendVVTest.java @@ -3,6 +3,10 @@ import junit.framework.TestCase; import org.agilewiki.jactor.*; import org.agilewiki.jactor.lpc.JLPCActor; +import org.agilewiki.jactor.JAFuture; +import org.agilewiki.jactor.JAMailboxFactory; +import org.agilewiki.jactor.MailboxFactory; +import org.agilewiki.jactor.RP; /** * Test code. diff --git a/src/test/java/org/agilewiki/jactor/simpleMachine/SetFTest.java b/src/test/java/org/agilewiki/jactor/simpleMachine/SetFTest.java index eb75b6b1..43bfa4e9 100644 --- a/src/test/java/org/agilewiki/jactor/simpleMachine/SetFTest.java +++ b/src/test/java/org/agilewiki/jactor/simpleMachine/SetFTest.java @@ -3,6 +3,10 @@ import junit.framework.TestCase; import org.agilewiki.jactor.*; import org.agilewiki.jactor.lpc.JLPCActor; +import org.agilewiki.jactor.JAFuture; +import org.agilewiki.jactor.JAMailboxFactory; +import org.agilewiki.jactor.MailboxFactory; +import org.agilewiki.jactor.RP; /** * Test code. diff --git a/src/test/java/org/agilewiki/jactor/simpleMachine/SetVTest.java b/src/test/java/org/agilewiki/jactor/simpleMachine/SetVTest.java index bc013ff7..d9607a06 100644 --- a/src/test/java/org/agilewiki/jactor/simpleMachine/SetVTest.java +++ b/src/test/java/org/agilewiki/jactor/simpleMachine/SetVTest.java @@ -3,6 +3,10 @@ import junit.framework.TestCase; import org.agilewiki.jactor.*; import org.agilewiki.jactor.lpc.JLPCActor; +import org.agilewiki.jactor.JAFuture; +import org.agilewiki.jactor.JAMailboxFactory; +import org.agilewiki.jactor.MailboxFactory; +import org.agilewiki.jactor.RP; /** * Test code.