aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2014-01-14 11:42:13 +0100
committerMax Kellermann <max@duempel.org>2014-01-14 11:49:42 +0100
commit3a660c5527eba5fe31326ccfbc880f0a5f5e720c (patch)
treefbcaf1b3b4205d81a46eedd091247d4ecf4e386c /src
parent738991494a863ea74080202e6bc9e869a46f32e9 (diff)
downloadmpd-3a660c5527eba5fe31326ccfbc880f0a5f5e720c.tar.gz
mpd-3a660c5527eba5fe31326ccfbc880f0a5f5e720c.tar.xz
mpd-3a660c5527eba5fe31326ccfbc880f0a5f5e720c.zip
db/upnp/WorkQueue: remove unused attributes "high", "low"
Diffstat (limited to 'src')
-rw-r--r--src/db/upnp/WorkQueue.hxx20
1 files changed, 3 insertions, 17 deletions
diff --git a/src/db/upnp/WorkQueue.hxx b/src/db/upnp/WorkQueue.hxx
index ed58cb170..6a672273b 100644
--- a/src/db/upnp/WorkQueue.hxx
+++ b/src/db/upnp/WorkQueue.hxx
@@ -48,8 +48,6 @@ template <class T>
class WorkQueue {
// Configuration
const std::string name;
- const size_t high;
- const size_t low;
// Status
// Worker threads having called exit
@@ -72,8 +70,8 @@ public:
* meaning no limit. hi == -1 means that the queue is disabled.
* @param lo minimum count of tasks before worker starts. Default 1.
*/
- WorkQueue(const char *_name, size_t hi = 0, size_t lo = 1)
- :name(_name), high(hi), low(lo),
+ WorkQueue(const char *_name)
+ :name(_name),
n_workers_exited(0),
ok(false),
n_threads(0), threads(nullptr)
@@ -124,13 +122,6 @@ public:
{
const ScopeLock protect(mutex);
- while (ok && high > 0 && queue.size() >= high) {
- // Keep the order: we test ok AFTER the sleep...
- client_cond.wait(mutex);
- if (!ok)
- return false;
- }
-
queue.push(t);
// Just wake one worker, there is only one new task.
@@ -180,9 +171,7 @@ public:
if (!ok)
return false;
- while (ok && queue.size() < low) {
- if (queue.empty())
- client_cond.broadcast();
+ while (queue.empty()) {
worker_cond.wait(mutex);
if (!ok)
return false;
@@ -190,9 +179,6 @@ public:
tp = queue.front();
queue.pop();
-
- // No reason to wake up more than one client thread
- client_cond.signal();
return true;
}