你好,我班上有一个全球约会, 这个日期是由两个线程使用和修改的,我需要解决这个日期的互斥问题。我是非java专家,在c中很简单,例如:
lock(...)
use/modified global date
unlock(....)
我需要java中的corrispondent
答案 0 :(得分:1)
对于初学者,请使用synchronized
块:
Object dateLock = new Object(); // globally visible lock, declare it
// next to your date object
//...
synchronized(dateLock) {
// modify date
}
以上两个线程就足够了。对于更复杂的场景,例如经常通过多个线程完成阅读并且很少写入时,请查看ReadWriteLock。