Namespace AIMP.SDK.Threading
Interfaces
IAimpServiceSynchronizer
This service provides an ability to run specified task in main thread of the application. Implements the IAimpService
IAimpServiceThreadPool
Service provides an access to thread pool and allows to plugin add a task to asynchronous execution. Note that count of running threads at same time is limited. All tasks will be added to special queue and will be executed when one of the threads is idle.
Make sure that all your tasks is completed or canceled during plugin finalization.
Implements the IAimpServiceIAimpServiceThreads
IAimpTask
Interface implementation must support asynchronous access.
IAimpTaskOwner
This is tool interface that provides an ability to plugin to be notified about canceling the operation. The instance of interface will be created by the application and will be sent to plugin as parameter of the Execute(IAimpTaskOwner) method.
IAimpTaskPriority
This is tool interface that provides an ability to plugin define priority of task. Interface should be implemented on same to IAimpTask level. Priority affects to task position in the waiting queue (waiting queue is used if all threads from pool are busy) and to priority of working thread.
Enums
AimpServiceThreadPoolType
Enum AimpServiceThreadPoolType
AimpTaskPriority
Enum AimpTaskPriority