summaryrefslogtreecommitdiff
path: root/cpp/common/concurrent/inc
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/common/concurrent/inc')
-rw-r--r--cpp/common/concurrent/inc/APRBase.h63
-rw-r--r--cpp/common/concurrent/inc/APRMonitor.h48
-rw-r--r--cpp/common/concurrent/inc/APRThread.h48
-rw-r--r--cpp/common/concurrent/inc/APRThreadFactory.h44
-rw-r--r--cpp/common/concurrent/inc/APRThreadPool.h67
-rw-r--r--cpp/common/concurrent/inc/LMonitor.h44
-rw-r--r--cpp/common/concurrent/inc/LThreadFactory.h37
-rw-r--r--cpp/common/concurrent/inc/LockedQueue.h68
-rw-r--r--cpp/common/concurrent/inc/Monitor.h59
-rw-r--r--cpp/common/concurrent/inc/MonitorImpl.h57
-rw-r--r--cpp/common/concurrent/inc/Runnable.h35
-rw-r--r--cpp/common/concurrent/inc/TaskQueue.h200
-rw-r--r--cpp/common/concurrent/inc/Thread.h37
-rw-r--r--cpp/common/concurrent/inc/ThreadFactory.h38
-rw-r--r--cpp/common/concurrent/inc/ThreadFactoryImpl.h52
-rw-r--r--cpp/common/concurrent/inc/ThreadPool.h40
16 files changed, 0 insertions, 937 deletions
diff --git a/cpp/common/concurrent/inc/APRBase.h b/cpp/common/concurrent/inc/APRBase.h
deleted file mode 100644
index e0b526faa1..0000000000
--- a/cpp/common/concurrent/inc/APRBase.h
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- *
- * Copyright (c) 2006 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-#ifndef _APRBase_
-#define _APRBase_
-
-#include <string>
-#include "apr_thread_mutex.h"
-#include "apr_errno.h"
-
-namespace qpid {
-namespace concurrent {
-
- /**
- * Use of APR libraries necessitates explicit init and terminate
- * calls. Any class using APR libs should obtain the reference to
- * this singleton and increment on construction, decrement on
- * destruction. This class can then correctly initialise apr
- * before the first use and terminate after the last use.
- */
- class APRBase{
- static APRBase* instance;
- apr_pool_t* pool;
- apr_thread_mutex_t* mutex;
- int count;
-
- APRBase();
- ~APRBase();
- static APRBase* getInstance();
- bool _increment();
- void _decrement();
- public:
- static void increment();
- static void decrement();
- };
-
- //this is also a convenient place for a helper function for error checking:
- void check(apr_status_t status, const std::string& file, const int line);
- std::string get_desc(apr_status_t status);
-
-#define CHECK_APR_SUCCESS(A) check(A, __FILE__, __LINE__);
-
-}
-}
-
-
-
-
-#endif
diff --git a/cpp/common/concurrent/inc/APRMonitor.h b/cpp/common/concurrent/inc/APRMonitor.h
deleted file mode 100644
index bf72596564..0000000000
--- a/cpp/common/concurrent/inc/APRMonitor.h
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- *
- * Copyright (c) 2006 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-#ifndef _APRMonitor_
-#define _APRMonitor_
-
-#include "apr_thread_mutex.h"
-#include "apr_thread_cond.h"
-#include "Monitor.h"
-
-namespace qpid {
-namespace concurrent {
-
- class APRMonitor : public virtual Monitor
- {
- apr_pool_t* pool;
- apr_thread_mutex_t* mutex;
- apr_thread_cond_t* condition;
-
- public:
- APRMonitor();
- virtual ~APRMonitor();
- virtual void wait();
- virtual void wait(u_int64_t time);
- virtual void notify();
- virtual void notifyAll();
- virtual void acquire();
- virtual void release();
- };
-}
-}
-
-
-#endif
diff --git a/cpp/common/concurrent/inc/APRThread.h b/cpp/common/concurrent/inc/APRThread.h
deleted file mode 100644
index d5034ce3b7..0000000000
--- a/cpp/common/concurrent/inc/APRThread.h
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- *
- * Copyright (c) 2006 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-#ifndef _APRThread_
-#define _APRThread_
-
-#include "apr_thread_proc.h"
-#include "APRThread.h"
-#include "Runnable.h"
-#include "Thread.h"
-
-namespace qpid {
-namespace concurrent {
-
- class APRThread : public virtual Thread
- {
- const Runnable* runnable;
- apr_pool_t* pool;
- apr_thread_t* runner;
-
- public:
- APRThread(apr_pool_t* pool, Runnable* runnable);
- virtual ~APRThread();
- virtual void start();
- virtual void join();
- virtual void interrupt();
- static unsigned int currentThread();
- };
-
-}
-}
-
-
-#endif
diff --git a/cpp/common/concurrent/inc/APRThreadFactory.h b/cpp/common/concurrent/inc/APRThreadFactory.h
deleted file mode 100644
index 87b240025d..0000000000
--- a/cpp/common/concurrent/inc/APRThreadFactory.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- *
- * Copyright (c) 2006 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-#ifndef _APRThreadFactory_
-#define _APRThreadFactory_
-
-#include "apr_thread_proc.h"
-
-#include "APRThread.h"
-#include "Thread.h"
-#include "ThreadFactory.h"
-#include "Runnable.h"
-
-namespace qpid {
-namespace concurrent {
-
- class APRThreadFactory : public virtual ThreadFactory
- {
- apr_pool_t* pool;
- public:
- APRThreadFactory();
- virtual ~APRThreadFactory();
- virtual Thread* create(Runnable* runnable);
- };
-
-}
-}
-
-
-#endif
diff --git a/cpp/common/concurrent/inc/APRThreadPool.h b/cpp/common/concurrent/inc/APRThreadPool.h
deleted file mode 100644
index cf6d30774c..0000000000
--- a/cpp/common/concurrent/inc/APRThreadPool.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
- *
- * Copyright (c) 2006 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-#ifndef _APRThreadPool_
-#define _APRThreadPool_
-
-#include <queue>
-#include <vector>
-#include "APRMonitor.h"
-#include "Thread.h"
-#include "ThreadFactory.h"
-#include "ThreadPool.h"
-#include "Runnable.h"
-
-namespace qpid {
-namespace concurrent {
-
- class APRThreadPool : public virtual ThreadPool
- {
- class Worker : public virtual Runnable{
- APRThreadPool* pool;
- public:
- inline Worker(APRThreadPool* _pool) : pool(_pool){}
- inline virtual void run(){
- while(pool->running){
- pool->runTask();
- }
- }
- };
- const bool deleteFactory;
- const int size;
- ThreadFactory* factory;
- APRMonitor lock;
- std::vector<Thread*> threads;
- std::queue<Runnable*> tasks;
- Worker* worker;
- volatile bool running;
-
- void runTask();
- public:
- APRThreadPool(int size);
- APRThreadPool(int size, ThreadFactory* factory);
- virtual void start();
- virtual void stop();
- virtual void addTask(Runnable* task);
- virtual ~APRThreadPool();
- };
-
-}
-}
-
-
-#endif
diff --git a/cpp/common/concurrent/inc/LMonitor.h b/cpp/common/concurrent/inc/LMonitor.h
deleted file mode 100644
index 8e2569921d..0000000000
--- a/cpp/common/concurrent/inc/LMonitor.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- *
- * Copyright (c) 2006 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-#ifndef _LMonitor_
-#define _LMonitor_
-
-/* Native Linux Monitor - Based of Kernel patch 19/20 */
-
-#include "Monitor.h"
-
-namespace qpid {
-namespace concurrent {
-
- class LMonitor : public virtual Monitor
- {
-
- public:
- LMonitor();
- virtual ~LMonitor();
- virtual void wait();
- virtual void notify();
- virtual void notifyAll();
- virtual void acquire();
- virtual void release();
- };
-}
-}
-
-
-#endif
diff --git a/cpp/common/concurrent/inc/LThreadFactory.h b/cpp/common/concurrent/inc/LThreadFactory.h
deleted file mode 100644
index 4a573d1bd1..0000000000
--- a/cpp/common/concurrent/inc/LThreadFactory.h
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- *
- * Copyright (c) 2006 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-#ifndef _LAPRThreadFactory_
-#define _LAPRThreadFactory_
-
-
-namespace qpid {
-namespace concurrent {
-
- class LThreadFactory
- {
- public:
- LThreadFactory();
- virtual ~LThreadFactory();
- virtual Thread* create(Runnable* runnable);
- };
-
-}
-}
-
-
-#endif
diff --git a/cpp/common/concurrent/inc/LockedQueue.h b/cpp/common/concurrent/inc/LockedQueue.h
deleted file mode 100644
index ef3f0b8381..0000000000
--- a/cpp/common/concurrent/inc/LockedQueue.h
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- *
- * Copyright (c) 2006 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-#ifndef _LockedQueue_
-#define _LockedQueue_
-
-#include <queue>
-#include "Monitor.h"
-
-/**
- * A threadsafe queue abstraction
- */
-namespace qpid {
-namespace concurrent {
- template<class T, class L> class LockedQueue
- {
- L lock;
- std::queue<T*> queue;
-
- public:
- void put(T* item);
- T* take();
- bool empty();
- };
-
- template<class T, class L> void LockedQueue<T, L>::put(T* item){
- lock.acquire();
- queue.push(item);
- lock.release();
- }
-
- template<class T, class L> T* LockedQueue<T, L>::take(){
- lock.acquire();
- T* item = 0;
- if(!queue.empty()){
- item = queue.front();
- queue.pop();
- }
- lock.release();
- return item;
- }
-
- template<class T, class L> bool LockedQueue<T, L>::empty(){
- lock.acquire();
- bool result = queue.empty();
- lock.release();
- return result;
- }
-
-}
-}
-
-
-#endif
diff --git a/cpp/common/concurrent/inc/Monitor.h b/cpp/common/concurrent/inc/Monitor.h
deleted file mode 100644
index 7f1a299c6a..0000000000
--- a/cpp/common/concurrent/inc/Monitor.h
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- *
- * Copyright (c) 2006 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-#ifndef _Monitor_
-#define _Monitor_
-
-#include "amqp_types.h"
-
-namespace qpid {
-namespace concurrent {
-
-class Monitor
-{
- public:
- virtual ~Monitor(){}
- virtual void wait() = 0;
- virtual void wait(u_int64_t time) = 0;
- virtual void notify() = 0;
- virtual void notifyAll() = 0;
- virtual void acquire() = 0;
- virtual void release() = 0;
-};
-
-/**
- * Scoped locker for a monitor.
- */
-class Locker
-{
- public:
- Locker(Monitor& lock_) : lock(lock_) { lock.acquire(); }
- ~Locker() { lock.release(); }
-
- private:
- Monitor& lock;
-
- // private and unimplemented to prevent copying
- Locker(const Locker&);
- void operator=(const Locker&);
-};
-
-}
-}
-
-
-#endif
diff --git a/cpp/common/concurrent/inc/MonitorImpl.h b/cpp/common/concurrent/inc/MonitorImpl.h
deleted file mode 100644
index e96e81d795..0000000000
--- a/cpp/common/concurrent/inc/MonitorImpl.h
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- *
- * Copyright (c) 2006 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
-#ifndef _MonitorImpl_
-#define _MonitorImpl_
-
-#ifdef _USE_APR_IO_
-#include "APRMonitor.h"
-#else /* use POSIX Monitor */
-#include "LMonitor.h"
-#endif
-
-
-namespace qpid {
-namespace concurrent {
-
-#ifdef _USE_APR_IO_
- class MonitorImpl : public virtual APRMonitor
- {
-
- public:
- MonitorImpl() : APRMonitor(){};
- virtual ~MonitorImpl(){};
-
- };
-#else
- class MonitorImpl : public virtual LMonitor
- {
-
- public:
- MonitorImpl() : LMonitor(){};
- virtual ~MonitorImpl(){};
-
- };
-#endif
-
-}
-}
-
-
-#endif
diff --git a/cpp/common/concurrent/inc/Runnable.h b/cpp/common/concurrent/inc/Runnable.h
deleted file mode 100644
index 9753a1ad0a..0000000000
--- a/cpp/common/concurrent/inc/Runnable.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- *
- * Copyright (c) 2006 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-#ifndef _Runnable_
-#define _Runnable_
-
-namespace qpid {
-namespace concurrent {
-
- class Runnable
- {
- public:
- virtual ~Runnable();
- virtual void run() = 0;
- };
-
-}
-}
-
-
-#endif
diff --git a/cpp/common/concurrent/inc/TaskQueue.h b/cpp/common/concurrent/inc/TaskQueue.h
deleted file mode 100644
index e06a3ce069..0000000000
--- a/cpp/common/concurrent/inc/TaskQueue.h
+++ /dev/null
@@ -1,200 +0,0 @@
-/*
- *
- * Copyright (c) 2006 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-#ifndef _TaskQueue_
-#define _TaskQueue_
-
-#include <iostream>
-#include <memory>
-#include <queue>
-#include "LockedQueue.h"
-#include "Runnable.h"
-#include "ThreadPool.h"
-
-namespace qpid {
-namespace concurrent {
- template<class T, class L> class TaskQueue : public virtual Runnable
- {
- const int max_iterations_per_run;
- L lock;
- //LockedQueue<T, L> queue;
- std::queue<T*> queue;
- ThreadPool* const pool;
- T* work;
- bool running;
- volatile bool stopped;
- TaskQueue<T, L>* next;
-
- volatile bool inrun;
-
- bool hasWork();
- void completed();
-
- T* take();
-
- protected:
- /**
- * Callback though which the task is executed
- */
- virtual void execute(T* t) = 0;
- /**
- * Allows a task to be completed asynchronously to the
- * execute() call if required.
- */
- virtual bool isComplete(T* t);
- /**
- * Should be called to signal completion of a task that was
- * signalled as not complete through the isComplete() methods
- * return value. This will allow normal processing to resume.
- */
- virtual void complete();
-
- public:
- TaskQueue(ThreadPool* const pool, int max_iterations_per_run = 100);
- virtual void run();
- void trigger();
- bool append(T* t);
- void stop(bool drain);
- inline void setNext(TaskQueue<T, L>* next){ this->next = next; }
- };
-
- template<class T, class L> TaskQueue<T, L>::TaskQueue(ThreadPool* const _pool, int _max_iterations_per_run) :
- pool(_pool),
- max_iterations_per_run(_max_iterations_per_run),
- work(0),
- running(false),
- stopped(false),
- next(0), inrun(false){
- }
-
- template<class T, class L> void TaskQueue<T, L>::run(){
- if(inrun) std::cout << "Already running" << std::endl;
- inrun = true;
-
- bool blocked = false;
- int count = max_iterations_per_run;
- while(!blocked && hasWork() && count){
- execute(work);
- if(isComplete(work)){
- completed();
- }else{
- blocked = true;
- }
- count--;
- }
- inrun = false;
-
- if(!blocked && count == 0){//performed max_iterations_per_run, requeue task to ensure fairness
- //running will still be true at this point
- lock.acquire();
- running = false;
- if(stopped) lock.notify();
- lock.release();
-
- trigger();
- }else if(hasWork()){//task was added to queue after we exited the loop above; should not need this?
- trigger();
- }
- }
-
- template<class T, class L> void TaskQueue<T, L>::trigger(){
- lock.acquire();
- if(!running){
- running = true;
- pool->addTask(this);
- }
- lock.release();
- }
-
- template<class T, class L> bool TaskQueue<T, L>::hasWork(){
- lock.acquire();
- if(!work) work = take();//queue.take();
- if(!work){
- running = false;
- if(stopped) lock.notify();
- }
- lock.release();
- return work;
- }
-
- template<class T, class L> bool TaskQueue<T, L>::append(T* item){
- if(!stopped){
- lock.acquire();
-
- //queue.put(item);
- queue.push(item);
-
- if(!running){
- running = true;
- pool->addTask(this);
- }
- lock.release();
- //}
- return true;
- }else{
- return false;
- }
- }
-
- template<class T, class L> bool TaskQueue<T, L>::isComplete(T* item){
- return true;//by default assume all tasks are synchronous w.r.t. execute()
- }
-
-
- template<class T, class L> void TaskQueue<T, L>::completed(){
- if(next){
- if(!next->append(work)){
- std::cout << "Warning: dropping task as next queue appears to have stopped." << std::endl;
- }
- }else{
- delete work;
- }
- work = 0;
- }
-
- template<class T, class L> void TaskQueue<T, L>::complete(){
- completed();
- lock.acquire();
- running = false;
- if(stopped) lock.notify();
- lock.release();
- }
-
- template<class T, class L> void TaskQueue<T, L>::stop(bool drain){
- //prevent new tasks from being added
- stopped = true;
- //wait until no longer running
- lock.acquire();
- while(running && (drain && hasWork())){
- lock.wait();
- }
- lock.release();
- }
-
- template<class T, class L> T* TaskQueue<T, L>::take(){
- T* item = 0;
- if(!queue.empty()){
- item = queue.front();
- queue.pop();
- }
- return item;
- }
-}
-}
-
-
-#endif
diff --git a/cpp/common/concurrent/inc/Thread.h b/cpp/common/concurrent/inc/Thread.h
deleted file mode 100644
index 6bd2a379ce..0000000000
--- a/cpp/common/concurrent/inc/Thread.h
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- *
- * Copyright (c) 2006 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-#ifndef _Thread_
-#define _Thread_
-
-namespace qpid {
-namespace concurrent {
-
- class Thread
- {
- public:
- virtual ~Thread(){}
- virtual void start() = 0;
- virtual void join() = 0;
- virtual void interrupt() = 0;
- };
-
-}
-}
-
-
-#endif
diff --git a/cpp/common/concurrent/inc/ThreadFactory.h b/cpp/common/concurrent/inc/ThreadFactory.h
deleted file mode 100644
index 53be000ff3..0000000000
--- a/cpp/common/concurrent/inc/ThreadFactory.h
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- *
- * Copyright (c) 2006 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-#ifndef _ThreadFactory_
-#define _ThreadFactory_
-
-#include "Thread.h"
-#include "Runnable.h"
-
-namespace qpid {
-namespace concurrent {
-
- class ThreadFactory
- {
- public:
- virtual ~ThreadFactory(){}
- virtual Thread* create(Runnable* runnable) = 0;
- };
-
-}
-}
-
-
-#endif
diff --git a/cpp/common/concurrent/inc/ThreadFactoryImpl.h b/cpp/common/concurrent/inc/ThreadFactoryImpl.h
deleted file mode 100644
index a534b3c1e2..0000000000
--- a/cpp/common/concurrent/inc/ThreadFactoryImpl.h
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- *
- * Copyright (c) 2006 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-#ifndef _ThreadFactoryImpl_
-#define _ThreadFactoryImpl_
-
-
-#ifdef _USE_APR_IO_
-#include "APRThreadFactory.h"
-#else
-#include "LThreadFactory.h"
-#endif
-
-
-namespace qpid {
-namespace concurrent {
-
-
-#ifdef _USE_APR_IO_
- class ThreadFactoryImpl : public virtual APRThreadFactory
- {
- public:
- ThreadFactoryImpl(): APRThreadFactory() {};
- virtual ~ThreadFactoryImpl() {};
- };
-#else
- class ThreadFactoryImpl : public virtual LThreadFactory
- {
- public:
- ThreadFactoryImpl(): LThreadFactory() {};
- virtual ~ThreadFactoryImpl() {};
- };
-#endif
-}
-}
-
-
-#endif
diff --git a/cpp/common/concurrent/inc/ThreadPool.h b/cpp/common/concurrent/inc/ThreadPool.h
deleted file mode 100644
index 679c889ff3..0000000000
--- a/cpp/common/concurrent/inc/ThreadPool.h
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- *
- * Copyright (c) 2006 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-#ifndef _ThreadPool_
-#define _ThreadPool_
-
-#include "Thread.h"
-#include "Runnable.h"
-
-namespace qpid {
-namespace concurrent {
-
- class ThreadPool
- {
- public:
- virtual void start() = 0;
- virtual void stop() = 0;
- virtual void addTask(Runnable* runnable) = 0;
- virtual ~ThreadPool(){}
- };
-
-}
-}
-
-
-#endif