diff --git a/src/main/java/com/syncleus/dann/examples/hyperassociativemap/visualization/ViewMap.java b/src/main/java/com/syncleus/dann/examples/hyperassociativemap/visualization/ViewMap.java
index 09b895b77c3740cd33cfde3f8f67264df97815a7..1b0026d8050756261c2ad0a5c988c356fa95240b 100644
--- a/src/main/java/com/syncleus/dann/examples/hyperassociativemap/visualization/ViewMap.java
+++ b/src/main/java/com/syncleus/dann/examples/hyperassociativemap/visualization/ViewMap.java
@@ -42,7 +42,9 @@ public class ViewMap extends JFrame implements ActionListener
 
 	public ViewMap()
 	{
-		this.executor = Executors.newFixedThreadPool(Runtime.getRuntime().availableProcessors());
+		// With only 1 thread, we would get a dead-lock when
+		// the view-update-thread is waiting for the alignment.
+		this.executor = Executors.newFixedThreadPool(Math.max(2, Runtime.getRuntime().availableProcessors()));
 		this.associativeMap = new LayeredHyperassociativeMap(8, executor);
 
 		HyperassociativeMapCanvas myMapVisual = null;