View previous topic :: View next topic
|
Author |
Message |
Rameshs
New User
Joined: 15 Jun 2005 Posts: 53 Location: India, Chennai
|
|
|
|
What is the difference between multiple tasks/tran and 1 task/ tran ?.
Is that anything that the appication program needs to handle apart from Transaction class definition in CICS to run multiple tasks per transaction ?.
I believe that the multiple tasks that run under a transaction share the same program code in memory. if we have 1 task / tran and then all the transaction have separate program code in memory. Correct me If i am wrong.
Thanks,
Ramesh |
|
Back to top |
|
|
Garry Carroll
Senior Member
Joined: 08 May 2006 Posts: 1193 Location: Dublin, Ireland
|
|
|
|
Your terminology needs clarification. Under CICS, the terms 'task' and 'transaction' may be interchangeable.
The term 'transaction' is often used to refer to a business transaction. This business transaction may comprise one or several CICS tasks.
All instances of a given CICS transid share the same program storage but each task has separate working-storage. Multiple CICS transids may be defined to use the same program, in which case all such definitions share the same program and each task has separate working-storage.
If a business transaction comprises multiple tasks using multiple programs, one copy of each program involved is in use and each task has its own working-storage.
Quote: |
if we have 1 task / tran and then all the transaction have separate program code in memory |
You are wrong, see description above.
Garry. |
|
Back to top |
|
|
Rameshs
New User
Joined: 15 Jun 2005 Posts: 53 Location: India, Chennai
|
|
|
|
Thank You Garry.
I refer here the transaction as Trans-id not the business transaction.
Since there is no difference in sharing the program code, then Why do we go for multiple CICS transids while we have the option to have multiple tasks per transid ?.
What is multithreading in CICS ?.
According to your statement, If a program code is shared by more than 1 tasks either same or different transaction is called multithreading.
Kindly advise |
|
Back to top |
|
|
Garry Carroll
Senior Member
Joined: 08 May 2006 Posts: 1193 Location: Dublin, Ireland
|
|
|
|
Quote: |
Since there is no difference in sharing the program code, then Why do we go for multiple CICS transids while we have the option to have multiple tasks per transid ?.
|
The answer to this lies in the design. For example, you might want to gather statistics on usage level of a task - in which case different groups of people would execute the same function using different transids. Your reporting on SMF could then differentiate between the groups. There might be many other reasons for having different transids execute the same program.
Quote: |
What is multithreading in CICS ?. |
If two or more tasks are sharing the same program, that is multi-threading. In the example of groups above, several users in one group can be simultaneously running TRAN1 which is executing PROGRAMA while several other users can also be running TRAN2 which is also executing PROGRAMA. There is one copy of PROGRAMA loaded,while each user is allocated their own working-storage and CICS cuts SMF records for each individual transaction. SMF reporting can tell how many instances of TRAN1 and TRAN2 were run.
Hope this clarifies,
Garry. |
|
Back to top |
|
|
Rameshs
New User
Joined: 15 Jun 2005 Posts: 53 Location: India, Chennai
|
|
|
|
Thank You Garry. I got clarified now. |
|
Back to top |
|
|
|