In addition to COBOL and C, does "High Performance View Passing" (HPVP) also apply to Java and .NET (C#) generated code.

book

Article ID: 14363

calendar_today

Updated On:

Products

CA Gen CA Gen - Build Tool CA Gen - Workstation Toolset CA Gen - Host Encyclopedia CA Gen - Run Time Distributed 3RD PARTY TSO

Issue/Introduction

From the Gen 8.5/8.6 documentation section Properties for Action Diagram/Operation:

High Performance View Passing

This option makes it possible to efficiently pass data between action blocks. The High Performance View Passing feature is available for process action diagrams and action blocks. The feature is not available for derived algorithm action blocks and procedure action diagrams.

...



In addition to COBOL and C, does "High Performance View Passing" (HPVP) also apply to Java and .NET (C#) generated code?

Environment

CA Gen 6.x 7.x, 8.x

Resolution

HPVP is only applicable for COBOL and C code generation per the following explanation:

When HPVP is disabled: 

  • Copies are made of the Used Action Block views. 
  • Prior to calling the Used Action Block, the Using Action Block's views are moved to those copies. The copies are then passed on the actual call statement. 
  • After returning from the Used Action Block, the copies are moved back to the Using Action Block's views. 

When HPVP is enabled (and the views match exactly): 

  • It is not necessary to make copies of the Used Action Block views because a reference can be passed to the Using Action Block views themselves.

HPVP works for COBOL and C because both Action Block views can be represented by the same view structure. However Gen Java and C# generated applications are designed such that each Action Block has its own separate view classes, so the same view cannot be shared between two different Action Blocks. Therefore even if two Action Block views match exactly, they are actually different view objects and cannot be shared