美文网首页
java限制方法被线程访问的个数

java限制方法被线程访问的个数

作者: RookieRun | 来源:发表于2020-08-13 16:00 被阅读0次
核心
 static Semaphore semaphore = new Semaphore(5,true);
 private static void testSemaphore() {
        for (int i = 0; i < 10; i++) {

            final Thread thread = new Thread() {
                @Override
                public void run() {
                    super.run();
                    try {
                        limit();
                    } catch (Exception x) {
                        System.out.println(x.getMessage());
                    }
                }
            };
            thread.setName("thread index:" + i);
            thread.start();
        }
    }

    private static void limit() throws InterruptedException {
        semaphore.acquire();
        System.out.println(Thread.currentThread().getName() + "---in");
        Thread.sleep(1000);
        System.out.println(Thread.currentThread().getName() + "---out");
        semaphore.release();
    }

核心就是Semaphore类

相关文章

网友评论

      本文标题:java限制方法被线程访问的个数

      本文链接:https://www.haomeiwen.com/subject/jvtidktx.html