malathys
New User
Joined: 07 Aug 2008 Posts: 10 Location: chennai
|
|
|
|
Hi All,
I have few queries over LINk, XCTL, START.
LINK will pass control to the next module and return the first module. This will hold the complete memory of all Linked modules.
XCTL will transfer control to next control & wont return back. This will wipe off the first module's resources while doing a XCTL.
Now i want to know more about START
Note1:START will invoke a transaction & it will continue with next statement in the module. My question is,
Note2: IF Program A issues START to invoke transaction ABCD, then ABCD will be invoked and Program A also continues processing.
Now what will happend to resources of Program A? Can anyone confirm that the resources of Program A will get wiped off, even though transaction ABCD is still under execution.
Reason i need this info is.
Sceanrio:
* We have a existing code whose flow is A---> B---> C---> D----->E, each of them are LINKed together.
Now we wrote a new module F, which is Linked by E. The problem is F uses lot of memory so CICS Team asked us to change the design to reduce memory.
We cannot go for XCTL from E to F.. Because based on E's processing, D will do something, based on D's processing, C will so something etc.
E do not want any data to be returned from F.
Now we planed to split F into 5 modules F1, F2, F3, F4, F5 each of them in turn called using XCTL. Now real problem is calling F1 from E with out using LINK and XCTL
So we found 2 options,
* E will place a data in TDQ. Whenever a data is placed in TDQ, a transaction (mapped to F1) will automatically invoke. This will allow E to return to D, etc.
* E uses START to invoke a transaction mapped to F1. (Considering Note1 to be true)
We are planning to use 2nd option, if Note1 & Note2 holds good. Can anyone confirm this? |
|