18#ifndef _ACTIVEMQ_THREADS_COMPOSITETASKRUNNER_H_
19#define _ACTIVEMQ_THREADS_COMPOSITETASKRUNNER_H_
34 class CompositeTaskRunnerImpl;
47 CompositeTaskRunnerImpl* impl;
51 CompositeTaskRunner(
const CompositeTaskRunner&);
52 CompositeTaskRunner& operator=(
const CompositeTaskRunner&);
#define AMQCPP_API
Definition Config.h:30
Represents a single task that can be part of a set of Tasks that are contained in a CompositeTaskRunn...
Definition CompositeTask.h:33
virtual void run()
Run method - called by the Thread class in the context of the thread.
void removeTask(CompositeTask *task)
Removes a CompositeTask that was added previously.
void addTask(CompositeTask *task)
Adds a new CompositeTask to the Set of Tasks that this class manages.
virtual void wakeup()
Signal the TaskRunner to wakeup and execute another iteration cycle on the task, the Task instance wi...
virtual ~CompositeTaskRunner()
virtual void shutdown()
Shutdown once the task has finished and the TaskRunner's thread has exited.
virtual bool iterate()
Perform one iteration of work, returns true if the task needs to run again to complete or false to in...
virtual void shutdown(long long timeout)
Shutdown after a timeout, does not guarantee that the task's iterate method has completed and the thr...
virtual void start()
Starts the task runner.
virtual bool isStarted() const
Represents a unit of work that requires one or more iterations to complete.
Definition Task.h:31
Definition TaskRunner.h:27
Interface for a runnable object - defines a task that can be run by a thread.
Definition Runnable.h:29
Definition CompositeTask.h:25
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.
Definition CachedConsumer.h:24