Is libecbufr thread-safe?

Created by cpb
Keywords:

In general, no.

For the most part libecbufr can be considered "reentrant", but the API itself is not thread-safe.

About the only assurance we can make for multi-threading is that once bufr_begin_api() is called (by a single thread), multiple threads *should* be capable of using the library, and that (read-only) BUFR table instances could be shared by multiple threads for processing messages.

However, actions like processing a single message using multiple threads is almost certainly a bad idea without some form of external locking.