Index: tools/android/forwarder2/device_controller.h |
diff --git a/tools/android/forwarder2/device_controller.h b/tools/android/forwarder2/device_controller.h |
index 4c36698c85604e8bcb2db3dfa188f8b87e65d5fc..5a0343ba7a9d0ce725b659458ddd9f43e120a620 100644 |
--- a/tools/android/forwarder2/device_controller.h |
+++ b/tools/android/forwarder2/device_controller.h |
@@ -11,8 +11,13 @@ |
#include "base/basictypes.h" |
#include "base/id_map.h" |
#include "base/memory/linked_ptr.h" |
+#include "base/memory/ref_counted.h" |
#include "tools/android/forwarder2/socket.h" |
+namespace base { |
+class SingleThreadTaskRunner; |
+} // namespace base |
+ |
namespace forwarder2 { |
class DeviceListener; |
@@ -27,12 +32,19 @@ class DeviceController { |
void Start(); |
private: |
- void KillAllListeners(); |
- void CleanUpDeadListeners(); |
+ void AcceptClientSoon(); |
+ void AcceptClientInternal(); |
+ |
+ void DeleteListener(int listener_port); |
+ void DeleteListenerOnTaskRunner(int listener_port); |
// Map from Port to DeviceListener objects (owns the pointer). |
typedef IDMap<DeviceListener, IDMapOwnPointer> ListenersMap; |
Philippe
2013/07/22 15:16:14
FYI, I also switched from base::IDMap<> to std::ha
|
+ // Lets delete DeviceListener instances on the thread they were created on |
+ // (which is DeviceController's construction thread). |
+ scoped_refptr<base::SingleThreadTaskRunner> listeners_deletion_thread_; |
+ |
ListenersMap listeners_; |
Socket kickstart_adb_socket_; |