summaryrefslogtreecommitdiffstats
path: root/ipc/ipc_perftests.cc
diff options
context:
space:
mode:
authorviettrungluu@chromium.org <viettrungluu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-01-16 19:33:32 +0000
committerviettrungluu@chromium.org <viettrungluu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-01-16 19:33:32 +0000
commit483692b1ebc8a26ae835a1a5d25ac59ceab568c7 (patch)
treed008c1db19f7779d23a7e10f9cde560f1165913b /ipc/ipc_perftests.cc
parent1bf97bf5b9b614429faf9e67c10324ad9abe6197 (diff)
downloadchromium_src-483692b1ebc8a26ae835a1a5d25ac59ceab568c7.zip
chromium_src-483692b1ebc8a26ae835a1a5d25ac59ceab568c7.tar.gz
chromium_src-483692b1ebc8a26ae835a1a5d25ac59ceab568c7.tar.bz2
Remove IPC::Channel::set_listener().
It wasn't used anywhere other than in ipc_perftests (which, up till very recently, weren't even compiled) in a non-essential way. Review URL: https://chromiumcodereview.appspot.com/11964002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177192 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ipc/ipc_perftests.cc')
-rw-r--r--ipc/ipc_perftests.cc36
1 files changed, 26 insertions, 10 deletions
diff --git a/ipc/ipc_perftests.cc b/ipc/ipc_perftests.cc
index 13337c7..901f07a 100644
--- a/ipc/ipc_perftests.cc
+++ b/ipc/ipc_perftests.cc
@@ -88,8 +88,8 @@ class EventTimeTracker {
// "quit" is sent, it will exit.
class ChannelReflectorListener : public IPC::Listener {
public:
- explicit ChannelReflectorListener(IPC::Channel* channel)
- : channel_(channel),
+ ChannelReflectorListener()
+ : channel_(NULL),
latency_tracker_("Client messages") {
VLOG(1) << "Client listener up";
}
@@ -99,7 +99,14 @@ class ChannelReflectorListener : public IPC::Listener {
latency_tracker_.ShowResults();
}
+ void Init(IPC::Channel* channel) {
+ DCHECK(!channel_);
+ channel_ = channel;
+ }
+
virtual bool OnMessageReceived(const IPC::Message& message) {
+ CHECK(channel_);
+
PickleIterator iter(message);
int64 time_internal;
EXPECT_TRUE(iter.ReadInt64(&time_internal));
@@ -138,8 +145,8 @@ class ChannelReflectorListener : public IPC::Listener {
class ChannelPerfListener : public IPC::Listener {
public:
- ChannelPerfListener(IPC::Channel* channel)
- : channel_(channel),
+ ChannelPerfListener()
+ : channel_(NULL),
msg_count_(0),
msg_size_(0),
count_down_(0),
@@ -151,6 +158,11 @@ class ChannelPerfListener : public IPC::Listener {
VLOG(1) << "Server listener down";
}
+ void Init(IPC::Channel* channel) {
+ DCHECK(!channel_);
+ channel_ = channel;
+ }
+
// Call this before running the message loop.
void SetTestParams(int msg_count, size_t msg_size) {
DCHECK_EQ(0, count_down_);
@@ -161,6 +173,8 @@ class ChannelPerfListener : public IPC::Listener {
}
virtual bool OnMessageReceived(const IPC::Message& message) {
+ CHECK(channel_);
+
PickleIterator iter(message);
int64 time_internal;
EXPECT_TRUE(iter.ReadInt64(&time_internal));
@@ -216,9 +230,10 @@ class ChannelPerfListener : public IPC::Listener {
TEST_F(IPCChannelPerfTest, Performance) {
// Setup IPC channel.
- IPC::Channel chan(kReflectorChannel, IPC::Channel::MODE_SERVER, NULL);
- ChannelPerfListener perf_listener(&chan);
- chan.set_listener(&perf_listener);
+ ChannelPerfListener perf_listener;
+ IPC::Channel chan(kReflectorChannel, IPC::Channel::MODE_SERVER,
+ &perf_listener);
+ perf_listener.Init(&chan);
ASSERT_TRUE(chan.Connect());
base::ProcessHandle process_handle = SpawnChild(TEST_REFLECTOR, &chan);
@@ -261,9 +276,10 @@ TEST_F(IPCChannelPerfTest, Performance) {
// This message loop bounces all messages back to the sender.
MULTIPROCESS_IPC_TEST_MAIN(RunReflector) {
MessageLoopForIO main_message_loop;
- IPC::Channel chan(kReflectorChannel, IPC::Channel::MODE_CLIENT, NULL);
- ChannelReflectorListener channel_reflector_listener(&chan);
- chan.set_listener(&channel_reflector_listener);
+ ChannelReflectorListener channel_reflector_listener;
+ IPC::Channel chan(kReflectorChannel, IPC::Channel::MODE_CLIENT,
+ &channel_reflector_listener);
+ channel_reflector_listener.Init(&chan);
CHECK(chan.Connect());
MessageLoop::current()->Run();