FairMQ: Introduce callbacks for the FairMQUnmanagedRegion.

Callbacks are called when the data buffer of the message assiciated
with the corresponding region is no longer needed by the transport.
Example in examples/advanced/Region/
This commit is contained in:
Alexey Rybalchenko
2017-11-14 17:00:37 +01:00
parent 6eddf50a47
commit 15479a58d1
4 changed files with 45 additions and 13 deletions

View File

@@ -16,6 +16,7 @@
#define FAIRMQEXAMPLEREGIONSAMPLER_H_
#include <string>
#include <atomic>
#include "FairMQDevice.h"
@@ -26,10 +27,14 @@ class FairMQExampleRegionSampler : public FairMQDevice
virtual ~FairMQExampleRegionSampler();
protected:
int fMsgSize;
virtual void InitTask();
virtual void Run();
virtual bool ConditionalRun();
virtual void ResetTask();
private:
int fMsgSize;
FairMQUnmanagedRegionPtr fRegion;
std::atomic<uint64_t> fNumUnackedMsgs;
};
#endif /* FAIRMQEXAMPLEREGIONSAMPLER_H_ */