event/SocketEvent: use class IntrusiveList<>

This commit is contained in:
Max Kellermann 2020-10-18 19:31:58 +02:00
parent a14997ffb8
commit e3270dfd68
2 changed files with 4 additions and 7 deletions

View File

@ -91,10 +91,7 @@ class EventLoop final
DeferredList deferred; DeferredList deferred;
#endif #endif
using SocketList = using SocketList = IntrusiveList<SocketEvent>;
boost::intrusive::list<SocketEvent,
boost::intrusive::base_hook<boost::intrusive::list_base_hook<boost::intrusive::link_mode<boost::intrusive::auto_unlink>>>,
boost::intrusive::constant_time_size<false>>;
/** /**
* A list of scheduled #SocketEvent instances, without those * A list of scheduled #SocketEvent instances, without those

View File

@ -23,8 +23,7 @@
#include "PollGroup.hxx" #include "PollGroup.hxx"
#include "net/SocketDescriptor.hxx" #include "net/SocketDescriptor.hxx"
#include "util/BindMethod.hxx" #include "util/BindMethod.hxx"
#include "util/IntrusiveList.hxx"
#include <boost/intrusive/list_hook.hpp>
#include <cassert> #include <cassert>
#include <cstddef> #include <cstddef>
@ -45,8 +44,9 @@ class EventLoop;
* thread that runs the #EventLoop, except where explicitly documented * thread that runs the #EventLoop, except where explicitly documented
* as thread-safe. * as thread-safe.
*/ */
class SocketEvent final : public boost::intrusive::list_base_hook<boost::intrusive::link_mode<boost::intrusive::auto_unlink>> { class SocketEvent final : IntrusiveListHook {
friend class EventLoop; friend class EventLoop;
friend class IntrusiveList<SocketEvent>;
EventLoop &loop; EventLoop &loop;