re PR java/27908 (VMSecureRandom generateSeed infinite loop? (Regression))

2006-06-12  Andrew Haley  <aph@redhat.com>

        * testsuite/libjava.lang/PR27908.out: New.
        * testsuite/libjava.lang/PR27908.java: New.

From-SVN: r114568
This commit is contained in:
Andrew Haley 2006-06-12 13:37:54 +00:00 committed by Andrew Haley
parent dda69cbfb7
commit af7acf2ed6
3 changed files with 88 additions and 0 deletions

View File

@ -1,3 +1,8 @@
2006-06-12 Andrew Haley <aph@redhat.com>
* testsuite/libjava.lang/PR27908.out: New.
* testsuite/libjava.lang/PR27908.java: New.
2006-06-10 Thomas Fitzsimmons <fitzsim@redhat.com>
* configure.ac (ac_configure_args): Add --disable-plugin.

View File

@ -0,0 +1,80 @@
class PR27908
{
public static void main (String[] argv)
{
run1 r1 = new run1();
run2 r2 = new run2();
run3 r3 = new run3();
new Thread (r1).start();
new Thread (r2).start();
new Thread (r3).start();
Thread.yield();
r1.stop();
r2.stop();
r3.stop();
}
private static class run1 implements Runnable
{
volatile int counter;
volatile boolean running;
public void run ()
{
counter = 0;
running = true;
while (running)
counter++;
System.out.println ("run1 exits!");
}
private void stop ()
{
running = false;
}
}
private static class run2 implements Runnable
{
volatile int counter;
boolean running;
public void run ()
{
counter = 0;
running = true;
while (running)
counter++;
System.out.println ("run2 exits!");
}
private void stop ()
{
running = false;
}
}
static class run3 implements Runnable
{
volatile int counter;
private volatile boolean running;
public void run ()
{
counter = 0;
running = true;
while (running)
counter++;
System.out.println ("run3 exits!");
}
void stop ()
{
running = false;
}
}
}

View File

@ -0,0 +1,3 @@
run2 exits!
run3 exits!
run1 exits!