Native

The following reference provides information about the Dragon Native API. Much of the API is inspired by Python multiprocessing but includes extended functionality, such as support for explicit placement of resources through the dragon.infrastructure.policy.Policy class.

Python Reference

Infrastructure Information

machine

The Dragon native machine interface provides hardware related functionality.

Process Management

process

The Dragon native process object provides process management across one or multiple distributed systems.

ProcessGroup

Object providing API to manage group of Dragon Processes via Dragon Global Services

Synchronization

barrier

The Dragon native barrier is an object for parties number of threads.

event

The Dragon native event is an object that is used for signaling between threads or processes.

lock

The Dragon native lock provides basic synchronization functionality between processes and threads.

semaphore

The Dragon native implementation of the classical semaphore synchronization object.

Communication and Shared Data

queue

The Dragon native queue provides ordered object communication between processes.

value

The Dragon native value is an ctypes object allocated from shared memory.

array

The Dragon native array is an ctypes object allocated from shared memory.

Process Pools

ApplyResult

Returned by apply_async and has get method to retrieve result.

AsyncResult

alias of ApplyResult

MapResult

Pool

A Dragon native Pool relying on native Process Group and Queues