0
点赞
收藏
分享

微信扫一扫

《图解java多线程设计模式》中的 ThreadPerMessage 模式

Helper: 提供字符显示功能的被动类

public class Helper {
    public void handle(int count,char c){
        System.out.println(" handle (" + count +"," +c + ") start");
        for (int i = 0;i < count;i++){
            slowly();
            System.out.print(c);
        }
        System.out.println("");
        System.out.println("   handle (" + count +" , " + c +")END");
    }
    private void slowly(){
        try {
            Thread.sleep(100);
        }catch (InterruptedException e){

        }
    }
}

Host:针对请求创建线程的类

public class Host {
    private final Helper helper = new Helper();
    public void request(final int count,final char c){
        System.out.println(" request(" + count +"," +c + ") start");
        new Thread(){
            public void run(){
                helper.handle(count,c);
            }
        }.start();
        System.out.println(" request(" + count +"," +c + ") end");
    }
}

Main:想host发送字符显示请求的类

public class Main {
    public static void main(String[] args) {
        System.out.println("main begin");
        Host host = new Host();
        host.request(10,'A');
        host.request(20,'B');
        host.request(30,'C');
        System.out.println("mai nend");
    }
}
举报

相关推荐

0 条评论