![]() |
fpmas 1.6
|
#include <client_server.h>
Public Member Functions | |
virtual T | read (DistributedId id, int location)=0 |
virtual void | releaseRead (DistributedId id, int location)=0 |
virtual T | acquire (DistributedId id, int location)=0 |
virtual void | releaseAcquire (DistributedId id, const T &updated_data, int location)=0 |
virtual void | lock (DistributedId id, int location)=0 |
virtual void | unlock (DistributedId id, int location)=0 |
virtual void | lockShared (DistributedId id, int location)=0 |
virtual void | unlockShared (DistributedId id, int location)=0 |
MutexClient API.
The MutexClient is used to transmit requests from an HardSyncMutex instance (associated to a DISTANT node) to distant processes.
All request transmission functions blocks until the corresponding response is received from the corresponding location
.
|
pure virtual |
Transmits a READ request of node id
to its location
.
id | of the node to read |
location | rank of the process that own node id |
Implemented in fpmas::synchro::hard::MutexClient< T >.
|
pure virtual |
Transmits a RELEASE_READ request of node id
to its location
.
id | of the read node |
location | rank of the process that own node id |
Implemented in fpmas::synchro::hard::MutexClient< T >.
|
pure virtual |
Transmits an ACQUIRE request of node id
to its location
.
id | of the node to acquire |
location | rank of the process that own node id |
Implemented in fpmas::synchro::hard::MutexClient< T >.
|
pure virtual |
Transmits a RELEASE_ACQUIRE request of node id
to its location
.
The provided updated_data
is serialized and transmitted to commit write operation to the owner process.
id | of the acquired node |
updated_data | reference to the locally updated data |
location | rank of the process that own node id |
Implemented in fpmas::synchro::hard::MutexClient< T >.
|
pure virtual |
Transmits a LOCK request of node id
to its location
.
id | of the node to lock |
location | rank of the process that own node id |
Implemented in fpmas::synchro::hard::MutexClient< T >.
|
pure virtual |
Transmits an UNLOCK request of node id
to its location
.
id | of the locked node |
location | rank of the process that own node id |
Implemented in fpmas::synchro::hard::MutexClient< T >.
|
pure virtual |
Transmits a LOCK_SHARED request of node id
to its location
.
id | of the node to share lock |
location | rank of the process that own node id |
Implemented in fpmas::synchro::hard::MutexClient< T >.
|
pure virtual |
Transmits an UNLOCK_SHARED request of node id
to its location
.
id | of the share locked node |
location | rank of the process that own node id |
Implemented in fpmas::synchro::hard::MutexClient< T >.