java:由更多线程使用的全局日期的互斥

时间:2012-09-10 07:47:15

标签: java multithreading

你好,我班上有一个全球约会, 这个日期是由两个线程使用和修改的,我需要解决这个日期的互斥问题。我是非java专家,在c中很简单,例如:

lock(...)
use/modified global date
unlock(....)

我需要java中的corrispondent

1 个答案:

答案 0 :(得分:1)

对于初学者,请使用synchronized块:

Object dateLock = new Object(); // globally visible lock, declare it 
                                // next to your date object

//...

synchronized(dateLock) {
   // modify date
}

以上两个线程就足够了。对于更复杂的场景,例如经常通过多个线程完成阅读并且很少写入时,请查看ReadWriteLock