关注Hazelcast Map Persistence article并想知道:为什么使用 synchronized 关键字声明MapStore方法? 是否有可能同时为相同记录键调用此方法?
特别是在直写映射存储的情况下,当与IMap方法同步调用存储方法时。
答案 0 :(得分:3)
是的,有可能从不同的分区同时调用MapStore
实现。这就是说,这意味着永远不会同时调用相同的密钥,但不同的密钥。
在该示例中,只有一个数据库(SQL)连接,因此所有方法都需要共享相同的互斥锁(使用synchronized块强制执行)。另一方面,如果您拥有多线程(线程安全)数据库访问/客户端或连接池,则可以不同步对方法的访问。