If you have resources that have run-unit scope (such as GLOBAL data declared in WORKING-STORAGE), you must synchronize access to that data from multiple threads by using logic in the application.
You can take one or both of the following actions:
If you have resources that have run-unit scope and you want them to be isolated within an individual program invocation instance (for example, programs with individual copies of data), define the data in the LOCAL-STORAGE SECTION. The data will then have the scope of the program invocation instance.