Test java multi-threaded CPU usage

 

public class App {
    public static void main(String[] args) {

        int num = args[0].toString()==null?1:Integer.parseInt(args[0].toString()) ;
        System.out.println("args[0] is "+num);
        ExecutorService cachedThreadPool = Executors.newFixedThreadPool(num);

        final AtomicLong atomic = new AtomicLong(0);
        for (int i = 0; i < num; i++) {

            cachedThreadPool.execute(new Runnable() {
                public void run() {
                    while(true){
                        String str = Thread.currentThread().getName();
                        atomic.incrementAndGet();
                        if(atomic.get() >999999){
                            System.out.println("============>"+str);
                            atomic.set(0);
                        }
                    }

                }
            });
        }

    }
}

 

Guess you like

Origin http://10.200.1.11:23101/article/api/json?id=326612031&siteId=291194637