java 中 synchronized 是什么意思

2025-03-26 11:54:24
推荐回答(2个)
回答1:

一段synchronized的代码被一个线程执行之前,他要先拿到执行这段代码的权限,在java里边就是拿到某个同步对象的锁(一个对象只有一把锁); 如果这个时候同步对象的锁被其他线程拿走了,他(这个线程)就只能等了(线程阻塞在锁池等待队列中)。 取到锁后,他就开始执行同步代码(被synchronized修饰的代码);线程执行完同步代码后马上就把锁还给同步对象,其他在锁池中等待的某个线程就可以拿到锁执行同步代码了。这样就保证了同步代码在统一时刻只有一个线程在执行。
关于线程的同步,一般有以下解决方法:

1. 在需要同步的方法的方法签名中加入synchronized关键字。

2. 使用synchronized块对需要进行同步的代码段进行同步。

3. 使用JDK 5中提供的java.util.concurrent.lock包中的Lock对象

回答2:

synchronized
[英]['sɪŋkrənaɪzd][美]['sɪŋkrənaɪzd]
同步的;

例句:

1.
What do you mean by incorrectly synchronized?
没有正确同步的含义是什么?

2.
Head first, united states team members practiced a technical routine at the olympicgames synchronized swimming qualifications in london.
美国国家队成员正倒立水中,为伦敦奥运的花样游泳资格赛进行技术自选训练。