#include <profile.hpp>
Definition at line 358 of file profile.hpp.
◆ profile_manager() [1/2]
sysio::vm::profile_manager::profile_manager |
( |
| ) |
|
|
inline |
Definition at line 359 of file profile.hpp.
359 {
362 auto lock = std::unique_lock(mutex);
365 pthread_kill(notify, SIGPROF);
366 }
367 }
368 });
369 }
void register_profile_signal_handler()
uint32_t profile_interval_us
std::condition_variable timer_cond
std::vector< pthread_t > threads_to_notify
◆ ~profile_manager() [1/2]
sysio::vm::profile_manager::~profile_manager |
( |
| ) |
|
|
inline |
Definition at line 381 of file profile.hpp.
381 {
382 {
383 auto lock = std::scoped_lock(mutex);
385 }
388 }
◆ profile_manager() [2/2]
sysio::vm::profile_manager::profile_manager |
( |
| ) |
|
|
inline |
Definition at line 359 of file profile.hpp.
359 {
362 auto lock = std::unique_lock(mutex);
365 pthread_kill(notify, SIGPROF);
366 }
367 }
368 });
369 }
◆ ~profile_manager() [2/2]
sysio::vm::profile_manager::~profile_manager |
( |
| ) |
|
|
inline |
Definition at line 381 of file profile.hpp.
381 {
382 {
383 auto lock = std::scoped_lock(mutex);
385 }
388 }
◆ instance() [1/2]
Definition at line 389 of file profile.hpp.
389 {
391 return result;
392 }
◆ instance() [2/2]
Definition at line 389 of file profile.hpp.
389 {
391 return result;
392 }
◆ start() [1/2]
void sysio::vm::profile_manager::start |
( |
profile_data * | data | ) |
|
|
inline |
Definition at line 370 of file profile.hpp.
370 {
371 auto lock = std::lock_guard(mutex);
372
373 per_thread_profile_data = data;
375 }
◆ start() [2/2]
void sysio::vm::profile_manager::start |
( |
profile_data * | data | ) |
|
|
inline |
Definition at line 370 of file profile.hpp.
370 {
371 auto lock = std::lock_guard(mutex);
372
373 per_thread_profile_data = data;
375 }
◆ stop() [1/2]
void sysio::vm::profile_manager::stop |
( |
| ) |
|
|
inline |
Definition at line 376 of file profile.hpp.
376 {
377 per_thread_profile_data = nullptr;
378 auto lock = std::lock_guard(mutex);
380 }
◆ stop() [2/2]
void sysio::vm::profile_manager::stop |
( |
| ) |
|
|
inline |
Definition at line 376 of file profile.hpp.
376 {
377 per_thread_profile_data = nullptr;
378 auto lock = std::lock_guard(mutex);
380 }
◆ done
bool sysio::vm::profile_manager::done = false |
◆ mutex
std::mutex sysio::vm::profile_manager::mutex |
◆ threads_to_notify
std::vector< pthread_t > sysio::vm::profile_manager::threads_to_notify |
◆ timer_cond
std::condition_variable sysio::vm::profile_manager::timer_cond |
◆ timer_thread
std::thread sysio::vm::profile_manager::timer_thread |
The documentation for this struct was generated from the following files: