]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
producer_consumer.cc: Use linear algorithm for producer.
authorFelix Yen <fwy@alumni.brown.edu>
Wed, 24 Mar 2004 17:16:07 +0000 (17:16 +0000)
committerBenjamin Kosnik <bkoz@gcc.gnu.org>
Wed, 24 Mar 2004 17:16:07 +0000 (17:16 +0000)
2004-03-24  Felix Yen  <fwy@alumni.brown.edu>

* testsuite/performance/20_util/allocator/producer_consumer.cc:
Use linear algorithm for producer.

From-SVN: r79920

libstdc++-v3/ChangeLog
libstdc++-v3/testsuite/performance/20_util/allocator/producer_consumer.cc

index 9a3980f6b35d9475e14ce0d19d5ea9c76c7e1675..73096ffc3de5927094619188c1213455e4800986 100644 (file)
@@ -1,3 +1,8 @@
+2004-03-24  Felix Yen  <fwy@alumni.brown.edu>
+
+       * testsuite/performance/20_util/allocator/producer_consumer.cc:
+       Use linear algorithm for producer.
+       
 2004-03-24  Paolo Carlini  <pcarlini@suse.de>
 
        * include/ext/mt_allocator.h (__mt_alloc<>::allocate,
index 5295e7e1fad2cd2e6cdd9485fefb02d5cd0d8467..4e13a5cc0b2f6f9c0fb3e0213212b36fb2309fee 100644 (file)
@@ -129,8 +129,9 @@ template<typename Container>
   Queue<Container>::push_back(const typename Container::value_type& value)
   {
     AutoLock auto_lock(lock);
+    const bool signal = queue.empty();
     queue.insert(queue.end(), value);
-    if (queue.size() == 1) pthread_cond_signal(&condition);
+    if (signal) pthread_cond_signal(&condition);
   }
 
 template<typename Container>