Wenn ich ein Array-Objekt der Länge 10:
habeObject[] arr=new Object[10];
Der Zugriff auf jedes Objekt schließt sich gegenseitig aus, der Zugriff zwischen mehreren Objekten kann jedoch gleichzeitig erfolgen.
Dann können Sie mit synchonized Folgendes tun:
synchoronized(arr[i]){ //... }
Ich würde gerne fragen, wie man eine solche Sperre implementiert, wenn man Reentrantlock verwendet?
Hinweis: Muss ich für dieses Nutzungsszenario 10 Lock-Arrays gleichzeitig erstellen?Lock[] lockList=new ReentrantLock[10]
if(lockList[i].trylock())[ // }
Ist das so?
初始化锁:
需要加锁时: