File tree Expand file tree Collapse file tree 3 files changed +10
-5
lines changed Expand file tree Collapse file tree 3 files changed +10
-5
lines changed Original file line number Diff line number Diff line change @@ -47,8 +47,9 @@ namespace pthread {
4747 *
4848 * @param m reference to a valid pthread::mutex
4949 */
50- explicit lock_guard (MutexType &m): _mutex(&m) {
51- _mutex->lock ();
50+ explicit lock_guard (MutexType &m){ // : _mutex(&m) {
51+ _mutex = &m ;
52+ _mutex->lock ();
5253 }
5354
5455 /* * The destructor release the guarded mutex.
Original file line number Diff line number Diff line change @@ -80,19 +80,23 @@ namespace pthread {
8080 }
8181
8282 /* * @return current number of elements in the queue */
83- size_t size () const {
8483#if __cplusplus < 201103L
84+ size_t size () const {
8585 // we use read/write locks when std::atomic is not available
8686 pthread::lock_guard<pthread::read_lock> lck (_rwlock);
87+ #else
88+ size_t size () const {
8789#endif
8890 return _items.size ();
8991 }
9092
9193 /* * @return maximun number of items that can be put in the queue */
92- size_t max_size () const {
9394#if __cplusplus < 201103L
95+ size_t max_size () {
9496 // we use read/write locks when std::atomic is not available
9597 pthread::lock_guard<pthread::read_lock> lck (_rwlock);
98+ #else
99+ size_t max_size () const {
96100#endif
97101 return _max_size ;
98102 }
Original file line number Diff line number Diff line change 99#include < memory>
1010#include < ctime>
1111
12- #define MESSAGES_TO_PRODUCE 10 // 500000 // messages produced
12+ #define MESSAGES_TO_PRODUCE 5000 // messages produced
1313#define CONSUMER_PROCESSING_DURATION 20 // millis
1414
1515#define CONSUMERS 10 // number of consumer threads
You can’t perform that action at this time.
0 commit comments