diff --git a/xchart-demo/src/main/java/com/xeiam/xchart/demo/charts/realtime/RealtimeChart01.java b/xchart-demo/src/main/java/com/xeiam/xchart/demo/charts/realtime/RealtimeChart01.java index f0388b1a4dad6f254b7338c7cc93b5f391331f0d..4970231dc0549c36bfcd3d13321a86cb8998453a 100644 --- a/xchart-demo/src/main/java/com/xeiam/xchart/demo/charts/realtime/RealtimeChart01.java +++ b/xchart-demo/src/main/java/com/xeiam/xchart/demo/charts/realtime/RealtimeChart01.java @@ -15,10 +15,10 @@ */ package com.xeiam.xchart.demo.charts.realtime; -import java.util.ArrayList; import java.util.List; import java.util.Timer; import java.util.TimerTask; +import java.util.concurrent.CopyOnWriteArrayList; import javax.swing.JFrame; @@ -102,7 +102,7 @@ public class RealtimeChart01 implements ExampleChart { private List<Double> getRandomData(int numPoints) { - List<Double> data = new ArrayList<Double>(); + List<Double> data = new CopyOnWriteArrayList<Double>(); for (int i = 0; i < numPoints; i++) { data.add(Math.random() * 100); } diff --git a/xchart-demo/src/main/java/com/xeiam/xchart/demo/charts/realtime/RealtimeChart02.java b/xchart-demo/src/main/java/com/xeiam/xchart/demo/charts/realtime/RealtimeChart02.java index ca0986656ecaae50602578862849e06038e81962..4cd06de9284385014c09af181f38cc47201daa83 100644 --- a/xchart-demo/src/main/java/com/xeiam/xchart/demo/charts/realtime/RealtimeChart02.java +++ b/xchart-demo/src/main/java/com/xeiam/xchart/demo/charts/realtime/RealtimeChart02.java @@ -15,10 +15,10 @@ */ package com.xeiam.xchart.demo.charts.realtime; -import java.util.ArrayList; import java.util.List; import java.util.Timer; import java.util.TimerTask; +import java.util.concurrent.CopyOnWriteArrayList; import javax.swing.JFrame; @@ -105,7 +105,7 @@ public class RealtimeChart02 implements ExampleChart { private List<Double> getRandomData(int numPoints) { - List<Double> data = new ArrayList<Double>(); + List<Double> data = new CopyOnWriteArrayList<Double>(); for (int i = 0; i < numPoints; i++) { data.add(Math.random() * 100); } @@ -114,7 +114,7 @@ public class RealtimeChart02 implements ExampleChart { private List<Integer> getMonotonicallyIncreasingData(int numPoints) { - List<Integer> data = new ArrayList<Integer>(); + List<Integer> data = new CopyOnWriteArrayList<Integer>(); for (int i = 0; i < numPoints; i++) { data.add(i); } diff --git a/xchart-demo/src/main/java/com/xeiam/xchart/demo/charts/realtime/RealtimeChart03.java b/xchart-demo/src/main/java/com/xeiam/xchart/demo/charts/realtime/RealtimeChart03.java index eda329215fa4b2420105a2b1d72063b963d452ff..e1260e369993374a5a9812731862a001ca045ceb 100644 --- a/xchart-demo/src/main/java/com/xeiam/xchart/demo/charts/realtime/RealtimeChart03.java +++ b/xchart-demo/src/main/java/com/xeiam/xchart/demo/charts/realtime/RealtimeChart03.java @@ -19,6 +19,7 @@ import java.util.ArrayList; import java.util.List; import java.util.Timer; import java.util.TimerTask; +import java.util.concurrent.CopyOnWriteArrayList; import javax.swing.JFrame; @@ -37,9 +38,9 @@ import com.xeiam.xchart.demo.charts.ExampleChart; */ public class RealtimeChart03 implements ExampleChart { - private List<Integer> xData = new ArrayList<Integer>(); - private List<Double> yData = new ArrayList<Double>(); - private List<Double> errorBars = new ArrayList<Double>(); + private List<Integer> xData = new CopyOnWriteArrayList<Integer>(); + private List<Double> yData = new CopyOnWriteArrayList<Double>(); + private List<Double> errorBars = new CopyOnWriteArrayList<Double>(); public static final String SERIES_NAME = "series1";