File barrier.h

Defines

DEFAULT_BARRIER_TIMEOUT_MS
namespace faabric
namespace util
class Barrier

Public Functions

explicit Barrier(int countIn, std::function<void()> completionFunctionIn, int timeoutMsIn)
void wait()

Public Static Functions

static std::shared_ptr<Barrier> create(int count, std::function<void()> completionFunctionIn, int timeoutMs = DEFAULT_BARRIER_TIMEOUT_MS)
static std::shared_ptr<Barrier> create(int count, int timeoutMs = DEFAULT_BARRIER_TIMEOUT_MS)

Private Members

int count = 0
int visits = 0
int currentPhase = 1
std::function<void()> completionFunction
int timeoutMs
std::mutex mx
std::condition_variable cv