From 08f5b9f1f9292a6e9e4a6ede16bb61b38bbae89d Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Sun, 5 Jan 2014 22:00:33 +0100 Subject: event/MultiSocketMonitor: add method ClearSocketList() --- src/event/MultiSocketMonitor.cxx | 9 +++++++++ src/event/MultiSocketMonitor.hxx | 5 +++++ 2 files changed, 14 insertions(+) (limited to 'src/event') diff --git a/src/event/MultiSocketMonitor.cxx b/src/event/MultiSocketMonitor.cxx index f22b0a022..5ef8b98af 100644 --- a/src/event/MultiSocketMonitor.cxx +++ b/src/event/MultiSocketMonitor.cxx @@ -19,6 +19,7 @@ #include "config.h" #include "MultiSocketMonitor.hxx" +#include "Loop.hxx" #include @@ -35,6 +36,14 @@ MultiSocketMonitor::~MultiSocketMonitor() // TODO } +void +MultiSocketMonitor::ClearSocketList() +{ + assert(GetEventLoop().IsInsideOrNull()); + + fds.clear(); +} + #ifndef WIN32 void diff --git a/src/event/MultiSocketMonitor.hxx b/src/event/MultiSocketMonitor.hxx index 963745be1..150f7baad 100644 --- a/src/event/MultiSocketMonitor.hxx +++ b/src/event/MultiSocketMonitor.hxx @@ -125,6 +125,11 @@ public: fds.emplace_front(*this, fd, events); } + /** + * Remove all sockets. + */ + void ClearSocketList(); + /** * Update the known sockets by invoking the given function for * each one; its return value is the events bit mask. A -- cgit v1.2.3