How can I use the OSS ASN.1/C++ API in a multithreaded application?

For more information about multithreading, see the Using Multiple Threads section. Here is a summary:

Guidelines For Using The OSS ASN.1/C++ API In Multithreaded Applications:

  • You should have a separate OssControl object for each thread.
  • In versions prior to 4.1, you must specify the NOTRAPPING runtime flag to achieve thread-safety. In versions 4.1 and later, you should not set the OSS_TRAPPING flag.
  • Do not use the Default error handling mechanism (i.e. the default asn1_get_last_error() ASN.1/C++ API function).
  • Use OSS Special Memory Management Classes with the following Restrictions:
    • do not change the current memory system
    • deallocate each object belonging to the memory pools in the same thread that allocated it

The samples included with some of the Knowledge Center answers are meant for your general understanding of the OSS products. Different versions of the products might produce slightly different outputs. Consult the products documentation and samples for the most up-to-date products information and code examples.

Contact Support
contact Our office hours
24 hours/day, 7 days/week

  • Phone: 1-888-OSS-2761 (USA and Canada)
  • Phone: 1-732-302-9669 (International)
  • Fax: 1-732-302-0023
  • Email:
Free Trial

Test drive the OSS Nokalva ASN.1, LTE, and XML Tools now! Your trial includes complete software, documentation, sample programs, free 24x7 technical support and more.

Learn ASN.1
Learn ASN.1

Our expert personnel can help you learn ASN.1!

We offer 4-day ASN.1 courses at our headquarters or your premises.