1
0
Fork 0
mirror of https://github.com/ossrs/srs.git synced 2025-03-09 15:49:59 +00:00

for bug #237, use isolate thread to recv message. 2.0.41

This commit is contained in:
winlin 2014-12-01 23:38:51 +08:00
parent 0e7836868c
commit 472b1742a2
5 changed files with 209 additions and 122 deletions

View file

@ -50,12 +50,15 @@ class SrsKbps;
class SrsRtmpClient;
class SrsSharedPtrMessage;
class SrsQueueRecvThread;
class SrsPublishRecvThread;
/**
* the client provides the main logic control for RTMP clients.
*/
class SrsRtmpConn : public virtual SrsConnection, public virtual ISrsReloadHandler
{
// for the thread to directly access any field of connection.
friend class SrsPublishRecvThread;
private:
SrsRequest* req;
SrsResponse* res;
@ -91,9 +94,9 @@ private:
virtual int playing(SrsSource* source);
virtual int do_playing(SrsSource* source, SrsQueueRecvThread* trd);
virtual int fmle_publishing(SrsSource* source);
virtual int do_fmle_publishing(SrsSource* source);
virtual int flash_publishing(SrsSource* source);
virtual int do_flash_publishing(SrsSource* source);
virtual int do_publishing(SrsSource* source, SrsPublishRecvThread* trd);
virtual int handle_publish_message(SrsSource* source, SrsMessage* msg, bool is_fmle, bool vhost_is_edge);
virtual int process_publish_message(SrsSource* source, SrsMessage* msg, bool vhost_is_edge);
virtual int process_play_control_msg(SrsConsumer* consumer, SrsMessage* msg);
private: