Go to the documentation of this file.
10 #include <boost/function.hpp>
11 #include <boost/shared_ptr.hpp>
20 boost::function<void()>
destroy(boost::shared_ptr<void> p);
ThreadWaiter waiter
Definition: threadpoolimpl.cc:77
Definition: threadpoolimpl.cc:63
static const millisec short_timeout(250)
ThreadPool(bool completeAllJobsBeforeDestruction=false)
ThreadPool.
Definition: threadpoolimpl.cc:207
boost::shared_ptr< ThreadPool > Ptr
Definition: threadpool.hh:169
boost::shared_ptr< Queue > Ptr
Definition: threadpool.hh:82
Semaphore * s1
Definition: async-deleter-tests.cc:37
boost::function< void()> clear(Semaphore *s)
Definition: helpers.cc:29
std::list< ThreadPool::ThreadPtr > threads
Definition: threadpoolimpl.cc:45
ThreadPool::Ptr CpuBound()
Definition: threadpoolimpl.cc:452
boost::shared_ptr< Scroom::Detail::ThreadPool::QueueImpl > get()
Definition: threadpoolimpl.cc:388
boost::shared_ptr< WeakQueue > Ptr
Definition: threadpool.hh:137
Definition: assertions.hh:14
Definition: threadpool.hh:46
Definition: function-additor.hh:16
static Ptr createAsync()
Definition: threadpoolimpl.cc:379
boost::shared_ptr< uint8_t > Ptr
Definition: blockallocator.hh:23
Definition: async-deleter.hh:21
static Ptr create(bool completeAllJobsBeforeDestruction)
Definition: threadpoolimpl.cc:198
bool setWork(boost::function< void()> const &fn)
Definition: threadpoolimpl.cc:421
BOOST_CHECK_EQUAL(sample.expectedColors, originalColormap->colors.size())
bool queueExists() const
Definition: queue.cc:61
ThreadList::Ptr threadList
Definition: threadpoolimpl.cc:66
PrivateData(bool completeAllJobsBeforeDestruction)
ThreadPool::PrivateData.
Definition: threadpoolimpl.cc:192
Definition: threadpool.hh:159
void clearImpl(Semaphore *s)
Definition: helpers.cc:20
ThreadPool::Ptr Sequentially()
Definition: threadpoolimpl.cc:459
void abort() __attribute__((noreturn))
Definition: assertions.cc:126
WeakQueue()
Definition: threadpoolimpl.cc:398
boost::function< void()> destroy(boost::shared_ptr< void > p)
Definition: helpers.cc:31
bool try_P()
Definition: semaphore.hh:48
Definition: async-deleter.hh:41
static Ptr create()
QueueJumper.
Definition: threadpoolimpl.cc:419
void P()
Definition: semaphore.hh:38
Definition: threadpool.hh:79
BOOST_AUTO_TEST_CASE(clear_clears)
Definition: function-additor-tests.cc:33
Definition: threadpool.hh:534
boost::shared_ptr< ThreadList > Ptr
Definition: threadpoolimpl.cc:41
static const int defaultPriority
Definition: threadpool.hh:270
void destroyImpl(boost::shared_ptr< void > &p)
Definition: helpers.cc:22
static Ptr create()
ThreadPool::Queue.
Definition: threadpoolimpl.cc:377
boost::shared_ptr< QueueJumper > Ptr
Definition: threadpool.hh:537
boost::mutex mut
Definition: threadpoolimpl.cc:44
Definition: threadpool.hh:134
boost::shared_ptr< Scroom::Detail::ThreadPool::QueueImpl > get()
Definition: threadpoolimpl.cc:403
bool wait()
Definition: test-helpers.cc:134
static Queue::Ptr defaultQueue()
Definition: threadpoolimpl.cc:365
ThreadPool::Ptr CpuBound()
Definition: threadpoolimpl.cc:452
boost::shared_ptr< WeakQueue > getWeak()
Definition: threadpoolimpl.cc:390
static Ptr create()
ThreadPool::WeakQueue.
Definition: threadpoolimpl.cc:396
Definition: semaphore.hh:15
static const millisec long_timeout(2000)
boost::function< void()> destroy(boost::shared_ptr< void > p)
Definition: helpers.cc:31
static ThreadPool::Ptr create(bool completeAllJobsBeforeDestruction=false)
Definition: threadpoolimpl.cc:228
boost::shared_ptr< PrivateData > Ptr
Definition: threadpool.hh:196
boost::shared_ptr< QueueImpl > Ptr
Definition: queue.hh:25
Semaphore * s2
Definition: async-deleter-tests.cc:38
BOOST_AUTO_TEST_CASE(deleter_deletes_asynchronously)
Definition: async-deleter-tests.cc:62
ProgressBarPulser::Ptr instance()
Definition: progressbarmanager.cc:43
BOOST_REQUIRE(originalColormap)
boost::function< void()> pass(Semaphore *s)
Definition: helpers.cc:27
boost::function< void()> fn
Definition: threadpool.hh:162
static const millisec short_timeout(250)
~Queue()
Definition: threadpoolimpl.cc:386
boost::function< void()> clear(Semaphore *s)
Definition: helpers.cc:29
static const millisec long_timeout(2000)
Definition: threadpoolimpl.cc:38
Queue()
Definition: threadpoolimpl.cc:381
Definition: threadpool.hh:193
Definition: boost-bind.cc:21
A(Semaphore *s1_, Semaphore *s2_)
Definition: async-deleter-tests.cc:41
~ThreadWaiter()
Definition: threadpoolimpl.cc:185
static void do_one(const PrivateData::Ptr &priv)
Definition: threadpoolimpl.cc:308
#define defect_message(m)
Definition: assertions.hh:43
ThreadPtr add()
Definition: threadpoolimpl.cc:238
boost::shared_ptr< boost::thread > ThreadPtr
Definition: threadpool.hh:170
void V()
Definition: semaphore.hh:77
@ PRIO_NORMAL
Definition: threadpool.hh:29
static void work(const PrivateData::Ptr &priv)
Definition: threadpoolimpl.cc:273
void schedule(boost::function< void()> const &fn, int priority=defaultPriority, const Queue::Ptr &queue=defaultQueue())
Definition: threadpoolimpl.cc:342
PrivateData::Ptr priv
Definition: threadpool.hh:247
std::list< std::pair< boost::weak_ptr< void >, std::string > > pointers
Definition: threadpoolimpl.cc:46
boost::shared_ptr< T > NotifyThreadList(boost::shared_ptr< T > t, const std::string &s)
Definition: threadpoolimpl.cc:80
boost::shared_ptr< Scroom::Detail::ThreadPool::QueueImpl > queue
Definition: threadpool.hh:161
void passImpl(Semaphore *s)
Definition: helpers.cc:18
~A()
Definition: async-deleter-tests.cc:46
void create(NewPresentationInterface *interface)
Definition: loader.cc:175
std::list< ThreadPtr > threads
Definition: threadpool.hh:246
boost::function< void()> pass(Semaphore *s)
Definition: helpers.cc:27
~ThreadPool()
Definition: threadpoolimpl.cc:257
void operator()()
Definition: threadpoolimpl.cc:438