Loading src/connection.cpp +15 −4 Original line number Diff line number Diff line Loading @@ -52,6 +52,14 @@ netplus::condata<char>::condata() : vector(){ pos=0; } netplus::condata<char>::condata(const condata<char> &src) : vector(src) { pos=0; } netplus::condata<char>::condata(const std::vector<char> &src){ pos=0; std::copy(src.begin(),src.end(),std::inserter<std::vector<char,condataAlloc<char>>>(*this,end())); } void netplus::condata<char>::resize(size_t size_c){ size_t rs = size(); Loading @@ -65,9 +73,9 @@ void netplus::condata<char>::append(const char* data, size_t datalen){ std::copy(data,data+datalen,std::inserter<std::vector<char,condataAlloc<char>>>(*this,end())); } size_t netplus::condata<char>::search(const char* word){ size_t netplus::condata<char>::search(const char* word,size_t pos){ size_t wsize=strlen(word); for(size_t i=0; i<std::vector<char,condataAlloc<char>>::size(); ++i){ for(size_t i=pos; i<std::vector<char,condataAlloc<char>>::size(); ++i){ for(size_t ii=0; ii<=wsize; ++ii){ if(ii==wsize){ return i-wsize; Loading @@ -82,12 +90,15 @@ size_t netplus::condata<char>::search(const char* word){ return std::string::npos; } size_t netplus::condata<char>::search(const char* word){ return search(word,0); } void netplus::condata<char>::push_back(char a){ std::vector<char,condataAlloc<char>>push_back(a); } netplus::con::con(){ state=0; } Loading src/connection.h +8 −5 Original line number Diff line number Diff line Loading @@ -123,9 +123,12 @@ namespace netplus { template <> class condata<char> : public std::vector<char,condataAlloc<char>>{ public: condata(); condata(const condata<char> &src); condata(const std::vector<char> &src); void resize(size_t size_c); void append(const char *data,size_t datalen); size_t search(const char *word); size_t search(const char *word,size_t pos); void push_back(char a); size_t pos; }; Loading src/event/epoll.cpp +7 −1 Original line number Diff line number Diff line Loading @@ -414,6 +414,10 @@ EVENTLOOP: event::~event() { } void sighandler(int signal){ raise(SIGINT); } void event::runEventloop(void *args) { NetException exception; Loading Loading @@ -458,13 +462,15 @@ MAINWORKERLOOP: } } std::cout << "start" << std::endl; for(auto i = threadpool.begin(); i!=threadpool.end(); ++i){ i->join(); } close(_pollFD); std::cout << "end" << std::endl; if (event::_Restart) { event::_Restart = false; goto MAINWORKERLOOP; Loading Loading
src/connection.cpp +15 −4 Original line number Diff line number Diff line Loading @@ -52,6 +52,14 @@ netplus::condata<char>::condata() : vector(){ pos=0; } netplus::condata<char>::condata(const condata<char> &src) : vector(src) { pos=0; } netplus::condata<char>::condata(const std::vector<char> &src){ pos=0; std::copy(src.begin(),src.end(),std::inserter<std::vector<char,condataAlloc<char>>>(*this,end())); } void netplus::condata<char>::resize(size_t size_c){ size_t rs = size(); Loading @@ -65,9 +73,9 @@ void netplus::condata<char>::append(const char* data, size_t datalen){ std::copy(data,data+datalen,std::inserter<std::vector<char,condataAlloc<char>>>(*this,end())); } size_t netplus::condata<char>::search(const char* word){ size_t netplus::condata<char>::search(const char* word,size_t pos){ size_t wsize=strlen(word); for(size_t i=0; i<std::vector<char,condataAlloc<char>>::size(); ++i){ for(size_t i=pos; i<std::vector<char,condataAlloc<char>>::size(); ++i){ for(size_t ii=0; ii<=wsize; ++ii){ if(ii==wsize){ return i-wsize; Loading @@ -82,12 +90,15 @@ size_t netplus::condata<char>::search(const char* word){ return std::string::npos; } size_t netplus::condata<char>::search(const char* word){ return search(word,0); } void netplus::condata<char>::push_back(char a){ std::vector<char,condataAlloc<char>>push_back(a); } netplus::con::con(){ state=0; } Loading
src/connection.h +8 −5 Original line number Diff line number Diff line Loading @@ -123,9 +123,12 @@ namespace netplus { template <> class condata<char> : public std::vector<char,condataAlloc<char>>{ public: condata(); condata(const condata<char> &src); condata(const std::vector<char> &src); void resize(size_t size_c); void append(const char *data,size_t datalen); size_t search(const char *word); size_t search(const char *word,size_t pos); void push_back(char a); size_t pos; }; Loading
src/event/epoll.cpp +7 −1 Original line number Diff line number Diff line Loading @@ -414,6 +414,10 @@ EVENTLOOP: event::~event() { } void sighandler(int signal){ raise(SIGINT); } void event::runEventloop(void *args) { NetException exception; Loading Loading @@ -458,13 +462,15 @@ MAINWORKERLOOP: } } std::cout << "start" << std::endl; for(auto i = threadpool.begin(); i!=threadpool.end(); ++i){ i->join(); } close(_pollFD); std::cout << "end" << std::endl; if (event::_Restart) { event::_Restart = false; goto MAINWORKERLOOP; Loading