Joined: 13 Dec 2013
I am using the EVENTS macro to enq/deq ECBs from one task. The ECBs are related to I/O to a VSAM dataset. Everything is fine with the I/Os being ASY to the dataset and the ECBs being posted and the "compute" portion of the code doing its thing all the while.
(More often than not the ECB is posted by the time the task gets around to checking it; and, I found a "Quick Post" routine in one of the IBM manuals where the POST is bypassed upon finding the ECB posted. All is well all over when the I/O and the computing is done in one task.
I wanted to split the I/O into a separate task from the computing task.
This is where the problem appeared. It seems that the storage acquired by the EVENTS macro for the table that holds the ECB address is owned by the issuing task and cannot be accessed by the sister I/O issuing task. It appears that there is no way to control the subpool from which storage is acquired for the EVENTS TABLE.
I attempted to get storage from the Address Space owning subpools and do some tricky-dicky EVENTS related stuff but that was a no-go.
I can keep the I/O code in the same task as the compute portion and do the ASY I/O but I was hoping to split this for capacity and performance reasons.
Anyone else encounter this and how did they address this issue?
Duncan, the friar
p.s. If I have not explained myself very well please ask questions and I will try to better state the issue.