Now able to close parasim-gui during experiment simulation, but the following exception is thrown (tried on lorenz84):
2012-12-02 17:33:28,820 [pool-2-thread-2] ERROR dk.ange.octave.exec.OctaveExec - InterruptedException should not happen
java.lang.InterruptedException
at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:996)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1303)
at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:248)
at java.util.concurrent.FutureTask.get(FutureTask.java:111)
at dk.ange.octave.exec.OctaveExec.getFromFuture(OctaveExec.java:156)
at dk.ange.octave.exec.OctaveExec.eval(OctaveExec.java:141)
at dk.ange.octave.io.OctaveIO.get(OctaveIO.java:75)
at dk.ange.octave.OctaveEngine.get(OctaveEngine.java:159)
at dk.ange.octave.OctaveEngine.get(OctaveEngine.java:174)
at org.sybila.parasim.computation.simulation.octave.LsodeEngineFactory$LsodeEngine.rawSimulation(LsodeEngineFactory.java:90)
at org.sybila.parasim.computation.simulation.octave.OctaveSimulationEngine.simulate(OctaveSimulationEngine.java:70)
at org.sybila.parasim.computation.simulation.cpu.SimpleAdaptiveStepSimulator.simulate(SimpleAdaptiveStepSimulator.java:61)
at org.sybila.parasim.computation.simulation.cpu.SimpleAdaptiveStepSimulator.simulate(SimpleAdaptiveStepSimulator.java:39)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.sybila.parasim.core.ProviderImpl$ProvidingMethodHandler.invoke(ProviderImpl.java:127)
at org.sybila.parasim.core.extension.interceptor.impl.AbstractIntercepted$4.invoke(AbstractIntercepted.java:140)
at org.sybila.parasim.core.extension.interceptor.impl.ManagedIntercepted$1.invoke(ManagedIntercepted.java:70)
at org.sybila.parasim.computation.simulation.api.AdaptiveStepSimulator_$$_javassist_24.simulate(AdaptiveStepSimulator_$$_javassist_24.java)
at org.sybila.parasim.application.model.ValidityRegionsComputation.call(ValidityRegionsComputation.java:149)
at org.sybila.parasim.application.model.ValidityRegionsComputation.call(ValidityRegionsComputation.java:65)
at org.sybila.parasim.execution.impl.SequentialExecution$1.call(SequentialExecution.java:90)
at org.sybila.parasim.execution.impl.SequentialExecution$1.call(SequentialExecution.java:81)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
2012-12-02 17:33:28,831 [SwingWorker-pool-1-thread-1] ERROR org.sybila.parasim.application.gui.Main - Can't launch the experiment.
java.util.concurrent.ExecutionException: java.lang.InterruptedException
at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:262)
at java.util.concurrent.FutureTask.get(FutureTask.java:119)
at org.sybila.parasim.application.model.ExperimentLauncher.launch(ExperimentLauncher.java:57)
at org.sybila.parasim.application.gui.Main$5.doInBackground(Main.java:132)
at org.sybila.parasim.application.gui.Main$5.doInBackground(Main.java:124)
at javax.swing.SwingWorker$1.call(SwingWorker.java:296)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at javax.swing.SwingWorker.run(SwingWorker.java:335)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
Caused by: java.lang.InterruptedException
at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:996)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1303)
at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:248)
at java.util.concurrent.FutureTask.get(FutureTask.java:111)
at org.sybila.parasim.execution.impl.SharedMemoryExecution$1.call(SharedMemoryExecution.java:97)
at org.sybila.parasim.execution.impl.SharedMemoryExecution$1.call(SharedMemoryExecution.java:88)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
... 3 more
2012-12-02 17:33:28,830 [pool-2-thread-3] ERROR dk.ange.octave.exec.OctaveExec - InterruptedException should not happen
java.lang.InterruptedException
at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:996)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1303)
at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:248)
at java.util.concurrent.FutureTask.get(FutureTask.java:111)
at dk.ange.octave.exec.OctaveExec.getFromFuture(OctaveExec.java:156)
at dk.ange.octave.exec.OctaveExec.eval(OctaveExec.java:141)
at dk.ange.octave.OctaveEngine.unsafeEval(OctaveEngine.java:76)
at dk.ange.octave.OctaveEngine.eval(OctaveEngine.java:122)
at org.sybila.parasim.computation.simulation.octave.LsodeEngineFactory$LsodeEngine.rawSimulation(LsodeEngineFactory.java:89)
at org.sybila.parasim.computation.simulation.octave.OctaveSimulationEngine.simulate(OctaveSimulationEngine.java:70)
at org.sybila.parasim.computation.simulation.cpu.SimpleAdaptiveStepSimulator.simulate(SimpleAdaptiveStepSimulator.java:61)
at org.sybila.parasim.computation.simulation.cpu.SimpleAdaptiveStepSimulator.simulate(SimpleAdaptiveStepSimulator.java:39)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.sybila.parasim.core.ProviderImpl$ProvidingMethodHandler.invoke(ProviderImpl.java:127)
at org.sybila.parasim.core.extension.interceptor.impl.AbstractIntercepted$4.invoke(AbstractIntercepted.java:140)
at org.sybila.parasim.core.extension.interceptor.impl.ManagedIntercepted$1.invoke(ManagedIntercepted.java:70)
at org.sybila.parasim.computation.simulation.api.AdaptiveStepSimulator_$$_javassist_24.simulate(AdaptiveStepSimulator_$$_javassist_24.java)
at org.sybila.parasim.application.model.ValidityRegionsComputation.call(ValidityRegionsComputation.java:149)
at org.sybila.parasim.application.model.ValidityRegionsComputation.call(ValidityRegionsComputation.java:65)
at org.sybila.parasim.execution.impl.SequentialExecution$1.call(SequentialExecution.java:90)
at org.sybila.parasim.execution.impl.SequentialExecution$1.call(SequentialExecution.java:81)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at org.sybila.parasim.core.ManagerImpl.fire(ManagerImpl.java:168)
at org.sybila.parasim.core.ManagerImpl.finalizeContext(ManagerImpl.java:308)
at org.sybila.parasim.core.ManagerImpl.shutdown(ManagerImpl.java:271)
at org.sybila.parasim.application.gui.Main$1.windowClosed(Main.java:70)
at java.awt.AWTEventMulticaster.windowClosed(AWTEventMulticaster.java:360)
at java.awt.AWTEventMulticaster.windowClosed(AWTEventMulticaster.java:359)
at java.awt.Window.processWindowEvent(Window.java:2054)
at javax.swing.JFrame.processWindowEvent(JFrame.java:290)
at java.awt.Window.processEvent(Window.java:2009)
at java.awt.Component.dispatchEventImpl(Component.java:4861)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Window.dispatchEventImpl(Window.java:2719)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:723)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:682)
at java.awt.EventQueue$3.run(EventQueue.java:680)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:696)
at java.awt.EventQueue$4.run(EventQueue.java:694)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:693)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:244)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:147)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:139)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:97)
Now able to close parasim-gui during experiment simulation, but the following exception is thrown (tried on lorenz84):