#pragma once //#define USE_VISUAL_STUDIO_CONCURRENCY_VISUALIZER #ifdef USE_VISUAL_STUDIO_CONCURRENCY_VISUALIZER #include <cvmarkersobj.h> #define DECLARE_THREAD_MARKER(name) \ Concurrency::diagnostic::marker_series markerSeries_##name; \ Concurrency::diagnostic::span *concurrencyVisualizerSpan_##name = nullptr; #define START_THREAD_MARKER(name, text) \ concurrencyVisualizerSpan_##name = new Concurrency::diagnostic::span(markerSeries_##name, text); #define STOP_THREAD_MARKER(name) \ delete concurrencyVisualizerSpan_##name; \ concurrencyVisualizerSpan_##name = nullptr; #else #define DECLARE_THREAD_MARKER(name) #define START_THREAD_MARKER(name, text) #define STOP_THREAD_MARKER(name) #endif