78 return sock_->isZeroCopyWriteInProgress();
107 LOG(ERROR) <<
"Connect error: " << ex.what();
232 auto client = std::make_shared<ZeroCopyTestAsyncSocket>(
234 clients_[client.get()] = client;
244 std::unique_ptr<ZeroCopyTestAsyncSocket>
client_;
247 std::shared_ptr<ZeroCopyTestAsyncSocket>>
263 for (
auto& client : clients_) {
264 client->connect(addr);
275 std::vector<std::unique_ptr<ZeroCopyTestAsyncSocket>>
clients_;
void connect(const folly::SocketAddress &remote)
void connectSuccess() noexceptoverride
std::unordered_map< ZeroCopyTestAsyncSocket *, std::shared_ptr< ZeroCopyTestAsyncSocket > > clients_
bool isZeroCopyWriteInProgress() const
void setZeroCopy(bool enable)
void addCallbackToServerSocket(folly::AsyncServerSocket &sock)
void connectionAccepted(int fd, const folly::SocketAddress &) noexceptoverride
constexpr detail::Map< Move > move
ZeroCopyTestServer server_
ZeroCopyTestServer(folly::EventBase *evb, int numLoops, size_t bufferSize, bool zeroCopy)
—— Concurrent Priority Queue Implementation ——
requires E e noexcept(noexcept(s.error(std::move(e))))
Callback(ZeroCopyTestAsyncSocket *parent)
void setBufferSize(size_t bufferSize)
void connectErr(const folly::AsyncSocketException &ex) noexceptoverride
void runInLoop(LoopCallback *callback, bool thisIteration=false)
void readEOF() noexceptoverride
static void run(EventBaseManager *ebm, EventBase *eb, folly::Baton<> *stop, const StringPiece &name)
void readErr(const folly::AsyncSocketException &ex) noexceptoverride
void readDataAvailable(size_t len) noexcept
void getReadBuffer(void **bufReturn, size_t *lenReturn) override
folly::AsyncSocket::UniquePtr sock_
std::unique_ptr< AsyncServerSocket, Destructor > UniquePtr
std::unique_ptr< folly::IOBuf > writeBuffer_
std::vector< std::unique_ptr< ZeroCopyTestAsyncSocket > > clients_
void getReadBuffer(void **bufReturn, size_t *lenReturn)
static std::unique_ptr< IOBuf > takeOwnership(void *buf, std::size_t capacity, FreeFunction freeFn=nullptr, void *userData=nullptr, bool freeOnError=true)
std::atomic< int > counter
void acceptError(const std::exception &) noexceptoverride
ZeroCopyTestAsyncSocket * parent_
void onDataFinish(folly::exception_wrapper)
void readDataAvailable(size_t len) noexceptoverride
ZeroCopyTestAsyncSocket(size_t *counter, folly::EventBase *evb, int numLoops, size_t bufferSize, bool zeroCopy)
ThreadPoolListHook * addr
std::unique_ptr< AsyncSocket, Destructor > UniquePtr
~ZeroCopyTestAsyncSocket()
folly::Function< void()> parent
std::unique_ptr< ZeroCopyTestAsyncSocket > client_
ZeroCopyTestAsyncSocket(size_t *counter, folly::EventBase *evb, int fd, int numLoops, size_t bufferSize, bool zeroCopy)
virtual void addAcceptCallback(AcceptCallback *callback, EventBase *eventBase, uint32_t maxAtOnce=kDefaultCallbackAcceptAtOnce)
folly::AsyncServerSocket::UniquePtr listenSock_