Prior to release 11.5, XCOMX1RT was ATTACHed as a new independent subtask and did not use the existing #SUBTASK. Invoking it via the ATTACH macro caused it to load multiple copies and was very memory-expensive.
As of release 11.5, it loads a single copy which must be reentrant.
It is now invoked as a standard subtasked Transaction Program and runs in the same #SUBTASK that is used for the rest of the transfer.
The sample EXIT01 code provided ( in CAI.CBXGSAMP(XCOMEX01 ) ) has been updated to be reentrant so that example should be used for customizing at individual sites.
As XCOMEX01 is now required to be reentrant, that means that only one copy of XCOMEX01 is loaded no matter how many simultaneous calls to it are made, but the storage required by it is acquired for each call to keep each transfer separate.