26#ifndef MYSQL_HARNESS_SYNC_POINT_INCLUDED
27#define MYSQL_HARNESS_SYNC_POINT_INCLUDED
32#include "harness_export.h"
45 virtual std::shared_ptr<SyncPoint>
get(
const std::string &name) = 0;
55#define HARNESS_SYNC_POINT 1
56#define HARNESS_WAIT_FOR_SYNC_POINT(name) \
58 if (auto *registry = mysql_harness::get_sync_point_registry()) { \
59 registry->get(name)->wait(); \
63#define HARNESS_SYNC_POINT 0
64#define HARNESS_WAIT_FOR_SYNC_POINT(name) \
Definition: sync_point.h:42
virtual ~SyncPointRegistry()=default
virtual std::shared_ptr< SyncPoint > get(const std::string &name)=0
Definition: sync_point.h:36
virtual ~SyncPoint()=default
Singleton class that stores the application type.
Definition: component_application_type_name.h:31
HARNESS_EXPORT SyncPointRegistry * get_sync_point_registry()
Definition: sync_point.cc:34