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

Side by Side Diff: content/public/browser/render_process_host.h

Issue 2446543004: Fix RPHI message queueing during process death (Closed)
Patch Set: . Created 4 years, 1 month 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CONTENT_PUBLIC_BROWSER_RENDER_PROCESS_HOST_H_ 5 #ifndef CONTENT_PUBLIC_BROWSER_RENDER_PROCESS_HOST_H_
6 #define CONTENT_PUBLIC_BROWSER_RENDER_PROCESS_HOST_H_ 6 #define CONTENT_PUBLIC_BROWSER_RENDER_PROCESS_HOST_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 #include <stdint.h> 9 #include <stdint.h>
10 10
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after
78 // General functions --------------------------------------------------------- 78 // General functions ---------------------------------------------------------
79 79
80 ~RenderProcessHost() override {} 80 ~RenderProcessHost() override {}
81 81
82 // Initialize the new renderer process, returning true on success. This must 82 // Initialize the new renderer process, returning true on success. This must
83 // be called once before the object can be used, but can be called after 83 // be called once before the object can be used, but can be called after
84 // that with no effect. Therefore, if the caller isn't sure about whether 84 // that with no effect. Therefore, if the caller isn't sure about whether
85 // the process has been created, it should just call Init(). 85 // the process has been created, it should just call Init().
86 virtual bool Init() = 0; 86 virtual bool Init() = 0;
87 87
88 // Ensures that a Channel exists and is at least queueing outgoing messages
89 // if there isn't a render process connected to it yet. This may be used to
90 // ensure that in the event of a renderer crash and restart, subsequent
91 // messages sent via Send() will eventually reach the new process.
92 virtual void EnableSendQueue() = 0;
93
88 // Gets the next available routing id. 94 // Gets the next available routing id.
89 virtual int GetNextRoutingID() = 0; 95 virtual int GetNextRoutingID() = 0;
90 96
91 // These methods add or remove listener for a specific message routing ID. 97 // These methods add or remove listener for a specific message routing ID.
92 // Used for refcounting, each holder of this object must AddRoute and 98 // Used for refcounting, each holder of this object must AddRoute and
93 // RemoveRoute. This object should be allocated on the heap; when no 99 // RemoveRoute. This object should be allocated on the heap; when no
94 // listeners own it any more, it will delete itself. 100 // listeners own it any more, it will delete itself.
95 virtual void AddRoute(int32_t routing_id, IPC::Listener* listener) = 0; 101 virtual void AddRoute(int32_t routing_id, IPC::Listener* listener) = 0;
96 virtual void RemoveRoute(int32_t routing_id) = 0; 102 virtual void RemoveRoute(int32_t routing_id) = 0;
97 103
(...skipping 282 matching lines...) Expand 10 before | Expand all | Expand 10 after
380 static void SetMaxRendererProcessCount(size_t count); 386 static void SetMaxRendererProcessCount(size_t count);
381 387
382 // Returns the current maximum number of renderer process hosts kept by the 388 // Returns the current maximum number of renderer process hosts kept by the
383 // content module. 389 // content module.
384 static size_t GetMaxRendererProcessCount(); 390 static size_t GetMaxRendererProcessCount();
385 }; 391 };
386 392
387 } // namespace content. 393 } // namespace content.
388 394
389 #endif // CONTENT_PUBLIC_BROWSER_RENDER_PROCESS_HOST_H_ 395 #endif // CONTENT_PUBLIC_BROWSER_RENDER_PROCESS_HOST_H_
OLDNEW
« no previous file with comments | « content/browser/renderer_host/render_view_host_impl.cc ('k') | content/public/test/mock_render_process_host.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698