poller_tcp.h 627 B

12345678910111213141516171819202122232425
  1. #pragma once
  2. #include "poller_tcp_unit.h"
  3. #include "poller.h"
  4. #include <util/generic/vector.h>
  5. #include <util/generic/hash.h>
  6. namespace NInterconnect {
  7. class TPollerThreads: public NActors::IPoller {
  8. public:
  9. TPollerThreads(size_t units = 1U, bool useSelect = false);
  10. ~TPollerThreads();
  11. void Start();
  12. void Stop();
  13. void StartRead(const TIntrusivePtr<TSharedDescriptor>& s, TFDDelegate&& operation) override;
  14. void StartWrite(const TIntrusivePtr<TSharedDescriptor>& s, TFDDelegate&& operation) override;
  15. private:
  16. TVector<TPollerUnit::TPtr> Units;
  17. };
  18. }