gtps1m5uSystem Macros

YIELDC-Yield Control

Use this system macro to yield control of the processor and allow processing of other entries. The entry is placed on the specified processor list.

Required Authorizations
Key0 Restricted System Common Storage

X

Format




label
A symbolic name assigned to the macro statement.

READY
Assigns the entry to the ready list. This is the highest priority list available to which the entry can be assigned. Assigning the entry to this list prevents any new work from being processed by this I-stream before the entry is dispatched again. Any entries that are already on the ready list will be allowed to process.

VCT
Assigns the entry to the virtual file access count (VCT) list. This list is used to delay the processing of an entry until all work on the ready list has been processed. Any entry on the VCT list is interleaved with new work. Entries on the VCT list will still be processed even when the system has stopped processing new work because a shutdown condition (low resource condition) has occurred.

Entry Requirements

R9 must contain the address of the entry control block (ECB) that is being processed.

Return Conditions

Programming Considerations

Examples

  1. You call YIELDC in order to add the ECB thread to the VCT list.
    YIELDC VCT
    

    The output from YIELDC VCT will look similar to the following:

     YIELDC VCT
      00CBB000 *         YIELDC  QPN2   +0AA
      050C0000 003880AC  003B  0026  AE405F11 6760BE09
    
  2. You call YIELDC in order to add the ECB thread to the ready list
    YIELDC READY
    

    The output from YIELDC READY will look similar to the following:

     YIELDC READY
      006D9000 *         YIELDC  QPN2   +1CA
      050C0000 003891CC  003B  0026  AE405F1B D887CA00
    
  3. You call YIELDC in order to add the ECB thread to the VCT list; it loops 5 times:
    YIELDC VCT
    

    The output from YIELDC VCT will look similar to the following:

     YIELDC VCT
      0072A000 *         YIELDC  QPN2   +18E      000004 ENTRIES SUPPRESSED
      050C0000 0038A190  003B  0026  AE405F2B 5414AE02
    
  4. You call YIELDC in order to add the ECB thread to the ready list; it loops twice:
    YIELDC READY
    

    The output from YIELDC READY will look similar to the following:

     YIELDC READY
      004054A0      IS01 YIELDC  QPN2   +1AA      000001 ENTRIES SUPPRESSED
      050C2000 0038C1AC  003B  0026  AE41633E AC6F9C08