18 #ifndef FOEDUS_SOC_SOC_MANAGER_HPP_
19 #define FOEDUS_SOC_SOC_MANAGER_HPP_
139 static
void trap_spawned_soc_main(const
std::vector< proc::
ProcAndName >& procedures);
146 #endif // FOEDUS_SOC_SOC_MANAGER_HPP_
ErrorStack initialize() override
Acquires resources in this object, usually called right after constructor.
ErrorStack wait_for_children_module(bool init, ModuleType module)
Wait for other engines to finish init/uninit the module.
static void trap_spawned_soc_main()
This should be called at the beginning of main() if the executable expects to be spawned as SOC engin...
The pure-virtual interface to initialize/uninitialize non-trivial resources.
Root package of FOEDUS (Fast Optimistic Engine for Data Unification Services).
ErrorStack uninitialize() override
An idempotent method to release all resources of this object, if any.
Forward declarations of classes in root package.
void report_engine_fatal_error()
Announce fatal error state of this (either master or child) engine if possible.
Brings error stacktrace information as return value of functions.
ErrorStack wait_for_master_module(bool init, ModuleType module)
Wait for master engine to finish init/uninit the module.
ModuleType
Enumerates modules in FOEDUS engine.
uint64_t get_shared_user_memory_size() const
void * get_shared_user_memory() const
Shortcut for get_shared_memory_repo()->get_global_user_memory()
#define CXX11_FINAL
Used in public headers in place of "final" of C++11.
Database engine object that holds all resources and provides APIs.
Typedefs of ID types used in procedure package.
std::pair< ProcName, Proc > ProcAndName
bool is_initialized() const override
Returns whether the object has been already initialized or not.
Repository of all shared memory in one FOEDUS instance.
#define CXX11_OVERRIDE
Used in public headers in place of "override" of C++11.
Forward declarations of classes in SOC package.
#define CXX11_FUNC_DELETE
Used in public headers in place of " = delete" of C++11.
Pimpl object of SocManager.
SOC manager, which maintains the shared resource across SOCs and, if this engine is a master engine...
SharedMemoryRepo * get_shared_memory_repo()
Returns the shared memories maintained across SOCs.