For the backing maps that you are accessing from WebSphere® eXtreme Scale
Client for .NET, you must define
a pessimistic locking strategy. You can also override the lock timeout
value for a map instance. After you configure locking, you can lock
individual keys or a list of keys in the map.
Procedure
- Configure a pessimistic locking strategy in the backing
map.
- Override the lock wait timeout for a single IGridMapPessimisticTx instance.
Use the IGridMapPessimisticTx.LockTimeout property to override the lock timeout value for a specific IGridMapPessimisticTx instance. The lock timeout value
affects all transactions started after the new timeout value is set.
This method can be useful when lock collisions are possible or expected
in select transactions.
- Lock individual keys or a list of keys in the map.
Use the
Lock method to lock the key in the
data grid or lock the key and determine whether the value exists in
the data grid.
- The following method locks the key in the map, returning true
if the key exists, and returning false if the key does not exist.
bool IGridMapPessimisticTx.Lock(Tkey key, LockMode lockMode);
- The following method locks a list of keys in the map, returning
a list of true or false values; returning true if
the key exists, and returning false if the key does
not exist.
IList<bool> IGridMapPessimisticTx.LockAll(IList<TKey> keyList, LockMode lockMode);
LockMode is an enum with possible values where you can specify the
keys that you want to lock:
- Shared, Upgradable, Exclusive
An example of setting the LockMode parameter
follows:
ptmap.Transaction.Begin();
ptmap.Lock(key, LockMode.Upgradable);
ptmap.Put(key,value);
ptmap.Transaction.Commit();