qq_41194872 2018-12-30 11:48 采纳率: 100%
浏览 2193

java多线程,统计每个线程执行次数

执行代码后算出来总是多3

package work2;

public class Part implements Runnable{

    private int n = 800;
    private int i = 1;
    @Override
    public void run() {
        // TODO Auto-generated method stub
        int m = 0;
        while(i <= n){

            if(i <= n) {
                m++;
            }
            sell();
        }
        System.out.println(Thread.currentThread().getName()+"生产了:"+m+"个");
    }

    public synchronized void sell(){
        if(i <= n){
            try {
                Thread.sleep(1);
            } catch (InterruptedException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            if(i <= n){
                System.out.println(Thread.currentThread().getName()+
                        "生产第"+ i++ +"个零件");
            }
        }
    }
}

package work2;

public class WorkShop {

    public static void main(String [] args){
        Part part = new Part();
        Thread thread1 = new Thread(part, "第一生产车间");
        Thread thread2 = new Thread(part, "第二生产车间");
        Thread thread3 = new Thread(part, "第三生产车间");
        Thread thread4 = new Thread(part, "第四生产车间");
        thread1.start();
        thread2.start();
        thread3.start();
        thread4.start();
    }
}

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 扩散模型sd.webui使用时报错“Nonetype”
    • ¥15 stm32流水灯+呼吸灯+外部中断按键
    • ¥15 将二维数组,按照假设的规定,如0/1/0 == "4",把对应列位置写成一个字符并打印输出该字符
    • ¥15 NX MCD仿真与博途通讯不了啥情况
    • ¥15 win11家庭中文版安装docker遇到Hyper-V启用失败解决办法整理
    • ¥15 gradio的web端页面格式不对的问题
    • ¥15 求大家看看Nonce如何配置
    • ¥15 Matlab怎么求解含参的二重积分?
    • ¥15 苹果手机突然连不上wifi了?
    • ¥15 cgictest.cgi文件无法访问