Program Listing for File loadBalancerWorker.h¶
↰ Return to documentation for file (include/parpeloadbalancer/loadBalancerWorker.h
)
#ifndef LOADBALANCERWORKER_H
#define LOADBALANCERWORKER_H
#include <parpecommon/parpeConfig.h>
#include <vector>
#include <functional>
constexpr int MPI_TAG_EXIT_SIGNAL = 0;
namespace parpe {
class LoadBalancerWorker {
public:
LoadBalancerWorker() = default;
using messageHandlerFunc = std::function<void (std::vector<char> &buffer, int jobId)>;
void run(const messageHandlerFunc &messageHandler);
private:
bool waitForAndHandleJobs(const messageHandlerFunc& messageHandler);
};
} // namespace parpe
#endif // LOADBALANCERWORKER_H