HAM API

Updated: April 19, 2023

A HAM provides an API for you to use in order to interact with it. This API provides a collection of functions to:

The API is implemented as a library that you can link against. The library is thread-safe and cancellation-safe.

The library is not fork()-safe as the child process created by fork() doesn't support HAM library calls. That is, if a process makes any HAM library calls and calls fork(), then HAM calls will not work reliably in the child until the child process calls an exec*() function. In the parent process, HAM library calls before or after a fork() call are fine. If the parent makes the first HAM library call after the fork() call, then HAM calls in the child are also fine.