evpp
evpp copied to clipboard
A modern C++ network library for developing high performance network services in TCP/UDP/HTTP protocols.
[root@localhost build]# make test Running tests... Test project /root/evpp/build Start 1: evpp_unittest 1/3 Test #1: evpp_unittest .................... Passed 53.71 sec Start 2: evpp_unittest_concurrentqueue 2/3 Test #2: evpp_unittest_concurrentqueue .... Passed 52.55...
此时clien中的tcp连接已经关闭了,conn_已经被reset掉了,因此走入了else分支 这里的assert处理不够准确,没有考虑到tcp连接已被关闭时外部调用disconnect的场景 引发assert失败的代码 assert(connector_ && !connector_->IsConnected());
The function `InvokeTimer::Create` will actually trigger a `shared_ptr` circular reference that makes an object of InvokeTimer to hold its own `shared_ptr`. If `InvokeTimer::OnTimeTriggered` or `InvokeTimer::OnCancled` is not finally invoked, it...
我在windows上编译,发现无论release或者debug版本,都会有日志语句输出,日志内容大概如下: `WARNING: Logging before InitGoogleLogging() is written to STDERR I0727 12:25:07.422080 18500 event_loop_thread.cc:10] evpp::EventLoopThread::Even tLoopThread this=0000000000559C70 loop=0000000000559D10 I0727 12:25:07.424080 18500 event_loop_thread.cc:20] evpp::EventLoopThread::Star t this=0000000000559C70 I0727 12:25:07.426080 46960 event_loop_thread.cc:35] evpp::EventLoopThread::Run this=0000000000559C70...
Thanks for your great work! But badly, i cannot build the project. These are the CMake Logs: ``` -- The C compiler identification is GNU 9.3.0 -- The CXX compiler...
Hi Developers, We have a issue [#9111](https://github.com/microsoft/vcpkg/issues/9111) reporting that evpp cannot be successfully built on OSX. After investigation, I think evpp is not fully adapted to OSX, see my PR...
如题: 当服务器主动断开连接的时候,TCPClient OnConnection 函数中收到 Disconnecting的消息, 如果在这个事件之后调用Disconnect (在本次loop中调用,或QueueInLoop之后调用)函数的话,由于conn_已经断开连接了,不管这个时候conn_是否非空,在TCPClient::DisconnectInLoop中都会触发assert。如果不主动调用TCPClient::Disconnect的话,那么TCPClient 在析构的时候assert(!connector_.get()); 会触发。而connector_只能在TCPClient::DisconnectInLoop被重置为空。 所以问题是: 当服务器主动断开连接的时候,已连接的TCPClient资源和释放? (TCPCLient的析构函数中的assert(!connector_.get()); 意味着必须调用TCPClient::Disconnect函数,而在服务器主动断开连接之后,客户端没法找到合适的时机去调用DisConnect函数,因为不管是在conn_ reset之前 还是 reset之后调用DisConnect都会在TCPClient::DisconnectInLoop中都会触发assert)
最近我们在使用evpp的时候出现了两次同样的崩溃,我们把崩溃日志写入了文件,如下: ``` *** Aborted at 1591871862 (unix time) try "date -d @1591871862" if you are using GNU date *** PC: @ 0x0 (unknown) *** SIGSEGV (@0x10) received by PID 1213...
The HTTPSendResponseCallback only supports string parameter. Would it be possible to make this a template (or similar concept) function where we have the flexibility of streaming the response (from a...