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

merge from srs2, for kbps free io

This commit is contained in:
winlin 2017-01-22 13:16:05 +08:00
commit 5c959fc781
4 changed files with 13 additions and 11 deletions

View file

@ -207,6 +207,7 @@ Please select your language:
### V2 changes ### V2 changes
* v2.0, 2017-01-22, for [#752][bug #752] release the io then free it for kbps. 2.0.232
* v2.0, 2017-01-18, fix [#750][bug #750] use specific error code for dns resolve. 2.0.231 * v2.0, 2017-01-18, fix [#750][bug #750] use specific error code for dns resolve. 2.0.231
* <strong>v2.0, 2017-01-18, [2.0 beta4(2.0.230)][r2.0b4] released. 86334 lines.</strong> * <strong>v2.0, 2017-01-18, [2.0 beta4(2.0.230)][r2.0b4] released. 86334 lines.</strong>
* v2.0, 2017-01-18, fix [#749][bug #749], timestamp overflow for ATC. 2.0.230 * v2.0, 2017-01-18, fix [#749][bug #749], timestamp overflow for ATC. 2.0.230
@ -1370,6 +1371,7 @@ Winlin
[bug #740]: https://github.com/ossrs/srs/issues/740 [bug #740]: https://github.com/ossrs/srs/issues/740
[bug #749]: https://github.com/ossrs/srs/issues/749 [bug #749]: https://github.com/ossrs/srs/issues/749
[bug #750]: https://github.com/ossrs/srs/issues/750 [bug #750]: https://github.com/ossrs/srs/issues/750
[bug #752]: https://github.com/ossrs/srs/issues/752
[bug #xxxxxxxxxx]: https://github.com/ossrs/srs/issues/xxxxxxxxxx [bug #xxxxxxxxxx]: https://github.com/ossrs/srs/issues/xxxxxxxxxx
[bug #735]: https://github.com/ossrs/srs/issues/735 [bug #735]: https://github.com/ossrs/srs/issues/735

View file

@ -483,7 +483,6 @@ void SrsEdgeForwarder::stop()
{ {
pthread->stop(); pthread->stop();
queue->clear(); queue->clear();
srs_freep(sdk); srs_freep(sdk);
} }

View file

@ -138,9 +138,9 @@ int SrsSimpleRtmpClient::connect()
void SrsSimpleRtmpClient::close() void SrsSimpleRtmpClient::close()
{ {
kbps->set_io(NULL, NULL);
srs_freep(client); srs_freep(client);
srs_freep(transport); srs_freep(transport);
kbps->set_io(NULL, NULL);
} }
int SrsSimpleRtmpClient::connect_app() int SrsSimpleRtmpClient::connect_app()

View file

@ -161,7 +161,7 @@ public:
* SrsKbps* kbps = ...; * SrsKbps* kbps = ...;
* kbps->set_io(in, out); * kbps->set_io(in, out);
* // both kbps->get_recv_bytes() and kbps->get_send_bytes() are available. * // both kbps->get_recv_bytes() and kbps->get_send_bytes() are available.
* // we can use the kbps as the data source of another kbps: * // we can use the kbps as the data source of another kbps:
* SrsKbps* user = ...; * SrsKbps* user = ...;
* user->set_io(kbps, kbps); * user->set_io(kbps, kbps);
* the server never know how many bytes already send/recv, for the connection maybe closed. * the server never know how many bytes already send/recv, for the connection maybe closed.
@ -176,14 +176,15 @@ public:
virtual ~SrsKbps(); virtual ~SrsKbps();
public: public:
/** /**
* set io to start new session. * set io to start new session.
* set the underlayer reader/writer, * set the underlayer reader/writer,
* if the io destroied, for instance, the forwarder reconnect, * if the io destroied, for instance, the forwarder reconnect,
* user must set the io of SrsKbps to NULL to continue to use the kbps object. * user must set the io of SrsKbps to NULL to continue to use the kbps object.
* @param in the input stream statistic. can be NULL. * @param in the input stream statistic. can be NULL.
* @param out the output stream statistic. can be NULL. * @param out the output stream statistic. can be NULL.
* @remark if in/out is NULL, use the cached data for kbps. * @remark if in/out is NULL, use the cached data for kbps.
*/ * @remark User must set_io(NULL, NULL) then free the in and out.
*/
virtual void set_io(ISrsProtocolStatistic* in, ISrsProtocolStatistic* out); virtual void set_io(ISrsProtocolStatistic* in, ISrsProtocolStatistic* out);
public: public:
/** /**