On Sat, 2005-04-09 at 15:40 -0400, Isaac Richards wrote: > On Saturday 09 April 2005 03:30 pm, Daniel Kristjansson wrote: > > There are three solutions as I see it: > > 1/ Construct the verbose string completely outside of the verbose lock. > > The problem with this is it makes the verbose macro take longer to > > execute. > Right, would: > ostringstream blah; > blah << dtime << " " << args; > mutex.lock(); > cout << blah << endl; > mutex.unlock(); > Really take that much extra time? It is noticable, but only if you turn on "-v playback" > > 3/ Disable verbose locking in release builds. > This would work, too. For now I've checked in a fix that uses ostringstream for release builds, and locked args in debug builds. The assumption is that people don't normally run with "-v all" on the release build, so the extra overhead isn't noticable. And if you are running a debug build it is easy enough to track down the cause of a VERBOSE deadlock.
-- Daniel
_______________________________________________ mythtv-dev mailing list [email protected] http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev
