Program Listing for File init.hpp

Return to documentation for file (include/concore/init.hpp)

#pragma once

#include <functional>
#include <stdexcept>

namespace concore {

inline namespace v1 {

struct init_data {
    int num_workers_{0};
    int reserved_slots_{10};
    std::function<void()> worker_start_fun_;
};

void init(const init_data& config = {});

struct already_initialized : std::runtime_error {
    already_initialized()
        : runtime_error("already initialized") {}
};

bool is_initialized();

void shutdown();

} // namespace v1
} // namespace concore