OpenVMS x86-64 Reentrant and Reusable Code
Multithreaded code, whether for explicit multiple threads, Asynchronous System Traps, or exceptions, requires that code and related data structures are referenced in a thread-safe manner. Failure to do so can and will cause difficult to reproduce and resolve bugs.
Reusable code is code that can be shared by multiple, potentially simultaneously executing images. Care must be taken to ensure that data storage areas are appropriately declared so that unsafe simultaneous modification crosses process boundaries.
Reusability and reentrancy are independent. A particular library can be reusable or reentrant, or both reusable and reentrant.
This session will review the ways to safely write code that operates in multiply threaded environments.
| Session Notes: | Color |