]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
SyncTest.java: New file.
authorJeff Sturm <jsturm@one-point.com>
Tue, 31 Jul 2001 02:13:46 +0000 (02:13 +0000)
committerJeff Sturm <jsturm@gcc.gnu.org>
Tue, 31 Jul 2001 02:13:46 +0000 (02:13 +0000)
* libjava.lang/SyncTest.java: New file.
* libjava.lang/SyncTest.out: New file.
* libjava.lang/SyncTest.xfail: New file.

From-SVN: r44495

libjava/testsuite/ChangeLog
libjava/testsuite/libjava.lang/SyncTest.java [new file with mode: 0644]
libjava/testsuite/libjava.lang/SyncTest.out [new file with mode: 0644]
libjava/testsuite/libjava.lang/SyncTest.xfail [new file with mode: 0644]

index 8889313c1243c4cdffece763569cff02f42d534c..ae3101f7e4550bb5981d5d07a75c0b464d095534 100644 (file)
@@ -1,3 +1,9 @@
+2001-07-30  Jeff Sturm  <jsturm@one-point.com>
+
+       * libjava.lang/SyncTest.java: New file.
+       * libjava.lang/SyncTest.out: New file.
+       * libjava.lang/SyncTest.xfail: New file.
+
 2001-07-27  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
 
        * lib/libjava.exp (${tool}_set_ld_library_path): New, copied from
diff --git a/libjava/testsuite/libjava.lang/SyncTest.java b/libjava/testsuite/libjava.lang/SyncTest.java
new file mode 100644 (file)
index 0000000..7cb6a56
--- /dev/null
@@ -0,0 +1,31 @@
+// Test atomic increment via synchronized blocks.
+public class SyncTest implements Runnable {
+  static int counter;
+
+  public void run() {
+    for (int n = 0; n < 1000000; n++)
+      synchronized (SyncTest.class) {
+        counter++;
+      }
+  }
+
+  public static void main(String[] args) {
+    SyncTest test = new SyncTest();
+    Thread[] thr = new Thread[4];
+
+    for (int n = 0; n < thr.length; n++) {
+      thr[n] = new Thread(test);
+      thr[n].start();
+    }
+
+    for (int n = 0; n < thr.length; n++) {
+      try {
+        thr[n].join();
+      } catch (InterruptedException ex) {
+      }
+    }
+
+    System.out.println(counter == 1000000 * thr.length ?
+      "ok" : "fail: " + counter);
+  }
+}
diff --git a/libjava/testsuite/libjava.lang/SyncTest.out b/libjava/testsuite/libjava.lang/SyncTest.out
new file mode 100644 (file)
index 0000000..9766475
--- /dev/null
@@ -0,0 +1 @@
+ok
diff --git a/libjava/testsuite/libjava.lang/SyncTest.xfail b/libjava/testsuite/libjava.lang/SyncTest.xfail
new file mode 100644 (file)
index 0000000..3f95317
--- /dev/null
@@ -0,0 +1 @@
+need-threads