From 4eae93d27b373ee73abdb85fcb3d311f740a9939 Mon Sep 17 00:00:00 2001 From: winlin Date: Fri, 11 Sep 2020 17:20:41 +0800 Subject: [PATCH] Rename SrsCoroutineManager to SrsConnectionManager --- trunk/src/app/srs_app_caster_flv.cpp | 2 +- trunk/src/app/srs_app_caster_flv.hpp | 2 +- trunk/src/app/srs_app_conn.cpp | 12 ++++++------ trunk/src/app/srs_app_conn.hpp | 11 ++++------- trunk/src/app/srs_app_gb28181.cpp | 2 +- trunk/src/app/srs_app_gb28181.hpp | 2 +- trunk/src/app/srs_app_rtsp.cpp | 2 +- trunk/src/app/srs_app_rtsp.hpp | 4 ++-- trunk/src/app/srs_app_server.cpp | 2 +- trunk/src/app/srs_app_server.hpp | 4 ++-- 10 files changed, 20 insertions(+), 23 deletions(-) diff --git a/trunk/src/app/srs_app_caster_flv.cpp b/trunk/src/app/srs_app_caster_flv.cpp index 44e212c66..92362a90f 100644 --- a/trunk/src/app/srs_app_caster_flv.cpp +++ b/trunk/src/app/srs_app_caster_flv.cpp @@ -49,7 +49,7 @@ SrsAppCasterFlv::SrsAppCasterFlv(SrsConfDirective* c) { http_mux = new SrsHttpServeMux(); output = _srs_config->get_stream_caster_output(c); - manager = new SrsCoroutineManager(); + manager = new SrsConnectionManager(); } SrsAppCasterFlv::~SrsAppCasterFlv() diff --git a/trunk/src/app/srs_app_caster_flv.hpp b/trunk/src/app/srs_app_caster_flv.hpp index 76e04ab84..37d56b31a 100644 --- a/trunk/src/app/srs_app_caster_flv.hpp +++ b/trunk/src/app/srs_app_caster_flv.hpp @@ -54,7 +54,7 @@ private: std::string output; SrsHttpServeMux* http_mux; std::vector conns; - SrsCoroutineManager* manager; + SrsConnectionManager* manager; public: SrsAppCasterFlv(SrsConfDirective* c); virtual ~SrsAppCasterFlv(); diff --git a/trunk/src/app/srs_app_conn.cpp b/trunk/src/app/srs_app_conn.cpp index 0dc2fec8c..35f54b003 100644 --- a/trunk/src/app/srs_app_conn.cpp +++ b/trunk/src/app/srs_app_conn.cpp @@ -31,13 +31,13 @@ using namespace std; #include #include -SrsCoroutineManager::SrsCoroutineManager() +SrsConnectionManager::SrsConnectionManager() { cond = srs_cond_new(); trd = new SrsSTCoroutine("manager", this); } -SrsCoroutineManager::~SrsCoroutineManager() +SrsConnectionManager::~SrsConnectionManager() { srs_freep(trd); srs_cond_destroy(cond); @@ -45,7 +45,7 @@ SrsCoroutineManager::~SrsCoroutineManager() clear(); } -srs_error_t SrsCoroutineManager::start() +srs_error_t SrsConnectionManager::start() { srs_error_t err = srs_success; @@ -56,7 +56,7 @@ srs_error_t SrsCoroutineManager::start() return err; } -srs_error_t SrsCoroutineManager::cycle() +srs_error_t SrsConnectionManager::cycle() { srs_error_t err = srs_success; @@ -72,7 +72,7 @@ srs_error_t SrsCoroutineManager::cycle() return err; } -void SrsCoroutineManager::remove(ISrsConnection* c) +void SrsConnectionManager::remove(ISrsConnection* c) { if (::find(conns.begin(), conns.end(), c) == conns.end()) { conns.push_back(c); @@ -80,7 +80,7 @@ void SrsCoroutineManager::remove(ISrsConnection* c) srs_cond_signal(cond); } -void SrsCoroutineManager::clear() +void SrsConnectionManager::clear() { // To prevent thread switch when delete connection, // we copy all connections then free one by one. diff --git a/trunk/src/app/srs_app_conn.hpp b/trunk/src/app/srs_app_conn.hpp index c6ab56a5b..e79d28331 100644 --- a/trunk/src/app/srs_app_conn.hpp +++ b/trunk/src/app/srs_app_conn.hpp @@ -36,19 +36,16 @@ class SrsWallClock; -// The coroutine manager use a thread to delete a connection, which will stop the service -// thread, for example, when the RTMP connection thread cycle terminated, it will notify -// the manager(the server) to remove the connection from list of server and push it to -// the manager thread to delete it, finally the thread of connection will stop. -class SrsCoroutineManager : virtual public ISrsCoroutineHandler, virtual public IConnectionManager +// The connection manager remove connection and delete it asynchronously. +class SrsConnectionManager : virtual public ISrsCoroutineHandler, virtual public IConnectionManager { private: SrsCoroutine* trd; std::vector conns; srs_cond_t cond; public: - SrsCoroutineManager(); - virtual ~SrsCoroutineManager(); + SrsConnectionManager(); + virtual ~SrsConnectionManager(); public: srs_error_t start(); // Interface ISrsCoroutineHandler diff --git a/trunk/src/app/srs_app_gb28181.cpp b/trunk/src/app/srs_app_gb28181.cpp index 601385e61..1ef8d58af 100644 --- a/trunk/src/app/srs_app_gb28181.cpp +++ b/trunk/src/app/srs_app_gb28181.cpp @@ -1890,7 +1890,7 @@ SrsGb28181Manger::SrsGb28181Manger(SrsServer *s, SrsConfDirective* c) // TODO: FIXME: support reload. server = s; config = new SrsGb28181Config(c); - manager = new SrsCoroutineManager(); + manager = new SrsConnectionManager(); } SrsGb28181Manger::~SrsGb28181Manger() diff --git a/trunk/src/app/srs_app_gb28181.hpp b/trunk/src/app/srs_app_gb28181.hpp index b392883cd..1c4f6e07a 100644 --- a/trunk/src/app/srs_app_gb28181.hpp +++ b/trunk/src/app/srs_app_gb28181.hpp @@ -473,7 +473,7 @@ private: std::map rtp_pool; std::map rtmpmuxers_ssrc; std::map rtmpmuxers; - SrsCoroutineManager* manager; + SrsConnectionManager* manager; SrsGb28181SipService* sip_service; SrsServer* server; public: diff --git a/trunk/src/app/srs_app_rtsp.cpp b/trunk/src/app/srs_app_rtsp.cpp index a3c66728d..59ca3c7ff 100644 --- a/trunk/src/app/srs_app_rtsp.cpp +++ b/trunk/src/app/srs_app_rtsp.cpp @@ -712,7 +712,7 @@ SrsRtspCaster::SrsRtspCaster(SrsConfDirective* c) output = _srs_config->get_stream_caster_output(c); local_port_min = _srs_config->get_stream_caster_rtp_port_min(c); local_port_max = _srs_config->get_stream_caster_rtp_port_max(c); - manager = new SrsCoroutineManager(); + manager = new SrsConnectionManager(); } SrsRtspCaster::~SrsRtspCaster() diff --git a/trunk/src/app/srs_app_rtsp.hpp b/trunk/src/app/srs_app_rtsp.hpp index 9d51ab615..bd3c418a7 100644 --- a/trunk/src/app/srs_app_rtsp.hpp +++ b/trunk/src/app/srs_app_rtsp.hpp @@ -51,7 +51,7 @@ class SrsAudioFrame; class SrsSimpleStream; class SrsPithyPrint; class SrsSimpleRtmpClient; -class SrsCoroutineManager; +class SrsConnectionManager; // A rtp connection which transport a stream. class SrsRtpConn: public ISrsUdpHandler @@ -182,7 +182,7 @@ private: std::map used_ports; private: std::vector clients; - SrsCoroutineManager* manager; + SrsConnectionManager* manager; public: SrsRtspCaster(SrsConfDirective* c); virtual ~SrsRtspCaster(); diff --git a/trunk/src/app/srs_app_server.cpp b/trunk/src/app/srs_app_server.cpp index a457dade9..be3e37169 100644 --- a/trunk/src/app/srs_app_server.cpp +++ b/trunk/src/app/srs_app_server.cpp @@ -656,7 +656,7 @@ SrsServer::SrsServer() pid_fd = -1; signal_manager = new SrsSignalManager(this); - conn_manager = new SrsCoroutineManager(); + conn_manager = new SrsConnectionManager(); handler = NULL; ppid = ::getppid(); diff --git a/trunk/src/app/srs_app_server.hpp b/trunk/src/app/srs_app_server.hpp index 23f52ea61..1c9fff035 100644 --- a/trunk/src/app/srs_app_server.hpp +++ b/trunk/src/app/srs_app_server.hpp @@ -53,7 +53,7 @@ class SrsUdpListener; class SrsTcpListener; class SrsAppCasterFlv; class SrsRtspCaster; -class SrsCoroutineManager; +class SrsConnectionManager; class SrsGb28181Caster; @@ -249,7 +249,7 @@ private: SrsHttpServer* http_server; SrsHttpHeartbeat* http_heartbeat; SrsIngester* ingester; - SrsCoroutineManager* conn_manager; + SrsConnectionManager* conn_manager; private: // The pid file fd, lock the file write when server is running. // @remark the init.d script should cleanup the pid file, when stop service,