Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(8)

Unified Diff: media/cast/test/utility/udp_proxy_main.cc

Issue 2668813002: Remove LazyInstance usage from media/ (Closed)
Patch Set: Fix presubmit comments. Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: media/cast/test/utility/udp_proxy_main.cc
diff --git a/media/cast/test/utility/udp_proxy_main.cc b/media/cast/test/utility/udp_proxy_main.cc
index 0244c3a1f0604e29ff4596dc9854236d29950244..98c289831e8a5c60aa552a26c7ca74e5714e0902 100644
--- a/media/cast/test/utility/udp_proxy_main.cc
+++ b/media/cast/test/utility/udp_proxy_main.cc
@@ -12,7 +12,6 @@
#include "base/at_exit.h"
#include "base/bind.h"
#include "base/command_line.h"
-#include "base/lazy_instance.h"
#include "base/logging.h"
#include "base/message_loop/message_loop.h"
#include "base/run_loop.h"
@@ -66,6 +65,7 @@ class ByteCounter {
};
namespace {
+
struct GlobalCounter {
base::TimeTicks last_printout;
ByteCounter in_pipe_input_counter;
@@ -73,10 +73,13 @@ struct GlobalCounter {
ByteCounter out_pipe_input_counter;
ByteCounter out_pipe_output_counter;
};
-} // namespace
-base::LazyInstance<GlobalCounter>::Leaky g_counter =
- LAZY_INSTANCE_INITIALIZER;
+GlobalCounter* GetGlobalCounter() {
+ static GlobalCounter* counter = new GlobalCounter();
+ return counter;
+}
+
+} // namespace
class ByteCounterPipe : public media::cast::test::PacketPipe {
public:
@@ -101,24 +104,26 @@ void SetupByteCounters(std::unique_ptr<media::cast::test::PacketPipe>* pipe,
}
void CheckByteCounters() {
+ GlobalCounter* counter = GetGlobalCounter();
+
base::TimeTicks now = base::TimeTicks::Now();
- g_counter.Get().in_pipe_input_counter.push(now);
- g_counter.Get().in_pipe_output_counter.push(now);
- g_counter.Get().out_pipe_input_counter.push(now);
- g_counter.Get().out_pipe_output_counter.push(now);
- if ((now - g_counter.Get().last_printout).InSeconds() >= 5) {
+ counter->in_pipe_input_counter.push(now);
+ counter->in_pipe_output_counter.push(now);
+ counter->out_pipe_input_counter.push(now);
+ counter->out_pipe_output_counter.push(now);
+ if ((now - counter->last_printout).InSeconds() >= 5) {
fprintf(stderr, "Sending : %5.2f / %5.2f mbps %6.2f / %6.2f packets / s\n",
- g_counter.Get().in_pipe_output_counter.megabits_per_second(),
- g_counter.Get().in_pipe_input_counter.megabits_per_second(),
- g_counter.Get().in_pipe_output_counter.packets_per_second(),
- g_counter.Get().in_pipe_input_counter.packets_per_second());
+ counter->in_pipe_output_counter.megabits_per_second(),
+ counter->in_pipe_input_counter.megabits_per_second(),
+ counter->in_pipe_output_counter.packets_per_second(),
+ counter->in_pipe_input_counter.packets_per_second());
fprintf(stderr, "Receiving: %5.2f / %5.2f mbps %6.2f / %6.2f packets / s\n",
- g_counter.Get().out_pipe_output_counter.megabits_per_second(),
- g_counter.Get().out_pipe_input_counter.megabits_per_second(),
- g_counter.Get().out_pipe_output_counter.packets_per_second(),
- g_counter.Get().out_pipe_input_counter.packets_per_second());
+ counter->out_pipe_output_counter.megabits_per_second(),
+ counter->out_pipe_input_counter.megabits_per_second(),
+ counter->out_pipe_output_counter.packets_per_second(),
+ counter->out_pipe_input_counter.packets_per_second());
- g_counter.Get().last_printout = now;
+ counter->last_printout = now;
}
base::ThreadTaskRunnerHandle::Get()->PostDelayedTask(
FROM_HERE,
@@ -188,11 +193,12 @@ int main(int argc, char** argv) {
exit(1);
}
- SetupByteCounters(&in_pipe, &(g_counter.Get().in_pipe_input_counter),
- &(g_counter.Get().in_pipe_output_counter));
- SetupByteCounters(
- &out_pipe, &(g_counter.Get().out_pipe_input_counter),
- &(g_counter.Get().out_pipe_output_counter));
+ GlobalCounter* counter = GetGlobalCounter();
+
+ SetupByteCounters(&in_pipe, &(counter->in_pipe_input_counter),
+ &(counter->in_pipe_output_counter));
+ SetupByteCounters(&out_pipe, &(counter->out_pipe_input_counter),
+ &(counter->out_pipe_output_counter));
printf("Press Ctrl-C when done.\n");
std::unique_ptr<media::cast::test::UDPProxy> proxy(
@@ -200,7 +206,7 @@ int main(int argc, char** argv) {
std::move(in_pipe),
std::move(out_pipe), NULL));
base::MessageLoop message_loop;
- g_counter.Get().last_printout = base::TimeTicks::Now();
+ counter->last_printout = base::TimeTicks::Now();
CheckByteCounters();
base::RunLoop().Run();
return 1;
« no previous file with comments | « media/capture/video/linux/video_capture_device_factory_linux.cc ('k') | media/cdm/external_clear_key_test_helper.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698