Fork me on GitHub

多线程使用与多线程安全

/**
 * @author yeyuting
 * @create 2021/1/13
 */
public class Abc {
    public static int i = 0;

    public static void main(String[] args) throws InterruptedException {

        List<Thread> list = new ArrayList<Thread>();

        for(int i = 0; i < 10000; i ++) {
            Thread thread = new Thread(new Nn());
            thread.start();
            list.add(thread);
        }

        for (Thread thread : list) {
            thread.join();
        }

        System.out.println(i);
    }

    static class Nn implements Runnable{

        public void run() {
                synchronized ("锁"){
                    System.out.println(Thread.currentThread().getName()+"进行到第"+i+"个数");
                    try {
                        Thread.sleep(10);
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                    i ++;

            }
        }




    }
}
synchronized用于线程的互斥访问,实现线程安全。
实现效果如下:

 

posted @ 2021-01-13 20:37  叶语婷  阅读(67)  评论(0编辑  收藏  举报