KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > net > sourceforge > groboutils > codecoverage > v2 > compiler > testcode > Synchronized1


1 /*
2  * @(#)Synchronized1.java
3  *
4  * Copyright (C) 2003 Matt Albrecht
5  * groboclown@users.sourceforge.net
6  * http://groboutils.sourceforge.net
7  *
8  * Permission is hereby granted, free of charge, to any person obtaining a
9  * copy of this software and associated documentation files (the "Software"),
10  * to deal in the Software without restriction, including without limitation
11  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
12  * and/or sell copies of the Software, and to permit persons to whom the
13  * Software is furnished to do so, subject to the following conditions:
14  *
15  * The above copyright notice and this permission notice shall be included in
16  * all copies or substantial portions of the Software.
17  *
18  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
21  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
23  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
24  * DEALINGS IN THE SOFTWARE.
25  */

26
27 package net.sourceforge.groboutils.codecoverage.v2.compiler.testcode;
28
29
30
31 /**
32  * Simple class to be recompiled.
33  *
34  * @author Matt Albrecht <a HREF="mailto:groboclown@users.sourceforge.net">groboclown@users.sourceforge.net</a>
35  * @version $Date: 2003/05/03 02:54:27 $
36  * @since May 2, 2003
37  */

38 public class Synchronized1 implements Runnable JavaDoc
39 {
40     static int j = 0;
41     public static void main( String JavaDoc[] args ) throws Exception JavaDoc
42     {
43         Thread JavaDoc t1 = new Thread JavaDoc( new Synchronized1() );
44         Thread JavaDoc t2 = new Thread JavaDoc( new Synchronized1() );
45         t1.start();
46         t2.start();
47         
48         t1.join();
49         t2.join();
50         if (j == 20)
51         {
52             Passed.passed( "Synchronized1" );
53         }
54     }
55     
56     
57     public void run()
58     {
59         for (int i = 0; i < 10; ++i)
60         {
61             synchronized( this.getClass() )
62             {
63                 ++j;
64             }
65             try
66             {
67                 Thread.sleep( 100 );
68             }
69             catch (InterruptedException JavaDoc ie)
70             {
71                 return;
72             }
73         }
74     }
75     
76 }
77
78
Popular Tags