projects
/
invirt/third/libt4.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
All random numbers generated via one PRNG seeded in one place.
[invirt/third/libt4.git]
/
threaded_log.cc
diff --git
a/threaded_log.cc
b/threaded_log.cc
index
0160f33
..
3218e33
100644
(file)
--- a/
threaded_log.cc
+++ b/
threaded_log.cc
@@
-1,20
+1,14
@@
-#include "threaded_log.h"
#include "t4.h"
#include "t4.h"
-
-static std::mutex log_mutex;
-static std::map<thread::id, int> thread_name_map;
-static int next_thread_num = 0;
-static std::map<const void *, int> instance_name_map;
-static int next_instance_num = 0;
-int DEBUG_LEVEL = 0;
+#include "types.h"
+#include "threaded_log.h"
using namespace std::chrono;
locked_ostream && _log_prefix(locked_ostream && f, const string & file, const string & func) {
auto thread = std::this_thread::get_id();
using namespace std::chrono;
locked_ostream && _log_prefix(locked_ostream && f, const string & file, const string & func) {
auto thread = std::this_thread::get_id();
- int tid = thread_name_map[thread];
+ int tid = global->thread_name_map[thread];
if (tid==0)
if (tid==0)
- tid = thread_name_map[thread] = ++next_thread_num;
+ tid = global->thread_name_map[thread] = ++global->next_thread_num;
auto utime = duration_cast<microseconds>(
system_clock::now().time_since_epoch()).count() % 1000000000;
f << std::setfill('0') << std::dec << std::left << std::setw(9) << utime << " ";
auto utime = duration_cast<microseconds>(
system_clock::now().time_since_epoch()).count() % 1000000000;
f << std::setfill('0') << std::dec << std::left << std::setw(9) << utime << " ";
@@
-24,13
+18,17
@@
locked_ostream && _log_prefix(locked_ostream && f, const string & file, const st
}
locked_ostream && _log_member(locked_ostream && f, const void *ptr) {
}
locked_ostream && _log_member(locked_ostream && f, const void *ptr) {
- int id = instance_name_map[ptr];
+ int id = global->instance_name_map[ptr];
if (id == 0)
if (id == 0)
- id = instance_name_map[ptr] = ++next_instance_num;
+ id = global->instance_name_map[ptr] = ++global->next_instance_num;
f << "#" << std::left << std::setw(2) << id << " ";
return std::move(f);
}
f << "#" << std::left << std::setw(2) << id << " ";
return std::move(f);
}
+int _log_debug_level() {
+ return global->DEBUG_LEVEL;
+}
+
lock _log_lock() {
lock _log_lock() {
- return lock(log_mutex);
+ return lock(global->log_mutex);
}
}