Module: sems Branch: master Commit: 5b00fac84fcaeedc0a2c4f11d5c836b65c0b727e URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sems/?a=commit;h=5b00fac84fcaeedc0a2c4f11d5c836b65c0b727e
Author: Václav Kubart <[email protected]> Committer: Václav Kubart <[email protected]> Date: Wed Apr 25 15:04:39 2012 +0200 b/f: transcoder - need to generate statistic reports from locked region --- core/AmB2BMedia.cpp | 9 ++++++++- 1 files changed, 8 insertions(+), 1 deletions(-) diff --git a/core/AmB2BMedia.cpp b/core/AmB2BMedia.cpp index dc9bdc0..ebdc9cb 100644 --- a/core/AmB2BMedia.cpp +++ b/core/AmB2BMedia.cpp @@ -72,6 +72,7 @@ void B2BMediaStatistics::reportCodecWriteUsage(string &dst) bool first = true; dst.clear(); + mutex.lock(); for (map<string, int>::iterator i = codec_write_usage.begin(); i != codec_write_usage.end(); ++i) { @@ -81,6 +82,7 @@ void B2BMediaStatistics::reportCodecWriteUsage(string &dst) dst += "="; dst += int2str(i->second); } + mutex.unlock(); } void B2BMediaStatistics::reportCodecReadUsage(string &dst) @@ -92,6 +94,7 @@ void B2BMediaStatistics::reportCodecReadUsage(string &dst) bool first = true; dst.clear(); + mutex.lock(); for (map<string, int>::iterator i = codec_read_usage.begin(); i != codec_read_usage.end(); ++i) { @@ -101,11 +104,13 @@ void B2BMediaStatistics::reportCodecReadUsage(string &dst) dst += "="; dst += int2str(i->second); } + mutex.unlock(); } void B2BMediaStatistics::getReport(const AmArg &args, AmArg &ret) { AmArg write_usage; + mutex.lock(); for (map<string, int>::iterator i = codec_write_usage.begin(); i != codec_write_usage.end(); ++i) { @@ -114,7 +119,6 @@ void B2BMediaStatistics::getReport(const AmArg &args, AmArg &ret) avp["count"] = i->second; write_usage.push(avp); } - ret["write"] = write_usage; AmArg read_usage; for (map<string, int>::iterator i = codec_read_usage.begin(); @@ -125,6 +129,9 @@ void B2BMediaStatistics::getReport(const AmArg &args, AmArg &ret) avp["count"] = i->second; read_usage.push(avp); } + mutex.unlock(); + + ret["write"] = write_usage; ret["read"] = read_usage; } _______________________________________________ Semsdev mailing list [email protected] http://lists.iptel.org/mailman/listinfo/semsdev
