synchronized关键字被用于静态方法时,它会锁定整个类,而不是实例对象。这意味着只有一个线程可以同时执行该静态方法,即使有多个线程同时调用该方法。

如果两个请求同时调用了被synchronized修饰的静态方法,其中一个请求会先获取到锁,并执行该方法,而另一个请求则会被阻塞,直到第一个请求释放锁。一旦第一个请求执行完毕并释放锁,第二个请求会获得锁,并开始执行该静态方法。

需要注意的是,如果多个线程同时调用了不同的静态方法,它们之间并不会相互阻塞,因为synchronized锁定的是整个类,而不是单个方法。

synchronized作用在static方法上两个请求同时过来会发生什么

原文地址: https://www.cveoy.top/t/topic/iM3H 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录