1. 程式人生 > >多線程加鎖二

多線程加鎖二

pub 多線程 while exception star public tar main []

package cn.mutipart.thd;

public class Test02 {
    public static void main(String[] args) {
        MyPainter p = new MyPainter();
        new Thread(){
            public void run() {
                while(true){
                    try {
                        Thread.sleep(20);
                    } 
catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } p.print1(); } }; }.start(); new Thread(){ public void run() {
while(true){ try { Thread.sleep(5); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } p.print2(); } }; }.start(); } }
class MyPainter { private String lock = new String("線程鎖"); public void print1(){ synchronized (lock) { System.out.print("[不"); System.out.print("是"); System.out.print("廣"); System.out.print("告]"); System.out.println(); } } public void print2(){ synchronized (lock) { System.out.print("[X"); System.out.print("X"); System.out.print("X"); System.out.print("X]"); System.out.println(); } } }

多線程加鎖二