MySQL有一个方便的功能:这可以用于为应用程序创建简单但非常具体的基于名称的锁。但是,它需要一个数据库连接。for user A for their data for feature X}
因为Java锁定是基于对象的,所以我似乎需要创建一个新的对象来表示这个锁的情况,然后将它放在一个静态缓存</e
我正在设计一个缓存,在那里我可以保存安全价格,这是计算耗时的。计算后,我将它们存储在一个映射中:安全作为关键字,价格作为价值。在这里,我尝试了不同的方法来获取锁,以防我需要更新进程缓存中的安全性(它可以被视为任何实体类)的价格。
First way:这里我试图在我的缓存类中提供锁定,这样就不需要客户端锁定了。第一种方式的问题:即使我需要更新一个证券的价格,我也会锁定所有证券,因为MyCache是单例的,所有的情况(putPrice和getPrice方法调用)都使用相同的锁实例,所以所有其他试图更新其他证券