MayaFlux 0.1.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ get_statistics()

std::unordered_map< std::string, std::any > MayaFlux::Yantra::OperationPool::get_statistics ( ) const
inline

Get statistics about pool usage.

Returns
Map of statistics

Definition at line 391 of file OperationPool.hpp.

392 {
393 std::shared_lock lock(m_mutex);
394
395 std::unordered_map<std::string, std::any> stats;
396 stats["total_operations"] = m_operations.size();
397
398 size_t total_accesses = 0;
399 std::string most_accessed;
400 size_t max_accesses = 0;
401
402 for (const auto& [name, info] : m_info) {
403 total_accesses += info.access_count;
404 if (info.access_count > max_accesses) {
405 max_accesses = info.access_count;
406 most_accessed = name;
407 }
408 }
409
410 stats["total_accesses"] = total_accesses;
411 if (!most_accessed.empty()) {
412 stats["most_accessed_operation"] = most_accessed;
413 stats["most_accessed_count"] = max_accesses;
414 }
415
416 return stats;
417 }
std::unordered_map< std::string, PooledOperationInfo > m_info
std::unordered_map< std::string, OperationPtr > m_operations

References m_info, m_mutex, and m_operations.