package org.akka.essentials.stm.stockticker.example; import akka.actor.ActorSystem; import akka.agent.Agent; public class StockApplication { public static void main(String[] args) throws Exception { ActorSystem _system = ActorSystem.create("Agent-example"); Stock stock = new Stock("APPL", new Agent<Float>(new Float("600.45"), _system)); Thread[] readerThreads = new Thread[10]; Thread[] updateThreads = new Thread[5]; for (int i = 0; i < 10; i++) { readerThreads[i] = new Thread(new StockReader(stock)); readerThreads[i].setName("#" + i); } for (int i = 0; i < 5; i++) { updateThreads[i] = new Thread(new StockUpdater(stock)); updateThreads[i].setName("#" + i); } for (int i = 0; i < 10; i++) readerThreads[i].start(); for (int i = 0; i < 5; i++) updateThreads[i].start(); Thread.sleep(3000); _system.shutdown(); } }