System Builtin Name | MI Instruction name | Prototype Name | Description | Usage Examples
|
_ATMCADD4 | ATMCADD4 | atmcadd4 | Atomic add 4-byte singed binary value. | t071.rpgle. Test of _ATMCADD4/8, _ATMCAND4/8, _ATMCOR4/8.
|
_ATMCADD8 | ATMCADD8 | atmcadd8 | Atomic add 8-byte singed binary value. | t071.rpgle. Test of _ATMCADD4/8, _ATMCAND4/8, _ATMCOR4/8.
|
_ATMCAND4 | ATMCAND4 | atmcand4 | Atomic and 4-byte unsinged binary value. | t071.rpgle. Test of _ATMCADD4/8, _ATMCAND4/8, _ATMCOR4/8.
|
_ATMCAND8 | ATMCAND8 | atmcand8 | Atomic and 8-byte unsinged binary value. | t071.rpgle. Test of _ATMCADD4/8, _ATMCAND4/8, _ATMCOR4/8.
|
_ATMCOR4 | ATMCOR4 | atmcor4 | Atomic or 4-byte unsinged binary value. | t071.rpgle. Test of _ATMCADD4/8, _ATMCAND4/8, _ATMCOR4/8.
|
_ATMCOR8 | ATMCOR8 | atmcor8 | Atomic or 8-byte unsinged binary value. | t071.rpgle. Test of _ATMCADD4/8, _ATMCAND4/8, _ATMCOR4/8.
|
_CHKLKVAL | CHKLKVAL | chklkval | Check lock value. |
- t070.rpgle. Test of CHKLKVAL/CLRLKVAL. This is also an example of implementing thread synchronization by using instruction CHKLKVAL and CLRLKVAL.
- t087.rpgle. Test of recursive locks via CHKLKVAL/CLRLKVAL.
- t105.rpgle. Mutually exclusive lock implemented via the CHKLKVAL and CLRLKVAL instructions. The lock object is represented by a 8-byte signed binary scalar stored in a user space object (*USRSPC) whose MI object type code and sub-type code is hex 1934. Multiple jobs can run this program to access shared resource concurrently. In this example, the shared storage protected by the mutex is another 8-byte signed binary scalar stored in same *USRSPC object as the mutex.
- t106.rpgle. Implement reetrant mutually exclusive lock via the CHKLKVAL and CLRLKVAL instructions. The lock object is represented by a 8-byte signed binary scalar stored in a user space object (*USRSPC) whose MI object type code and sub-type code is hex 1934. Multiple jobs can run this program to access shared resource concurrently. In this example, the shared storage protected by the mutex is another 8-byte signed binary scalar stored in same *USRSPC object as the mutex.
|
_CLRLKVAL | CLRLKVAL | clrlkval | Clear lock value. |
- t070.rpgle. Test of CHKLKVAL/CLRLKVAL. This is also an example of implementing thread synchronization by using instruction CHKLKVAL and CLRLKVAL.
- t087.rpgle. Test of recursive locks via CHKLKVAL/CLRLKVAL.
- t105.rpgle.
- t106.rpgle.
|
_SYNCSTG | SYNCSTG | syncstg | Synchronize shared storage accesses. | t073.rpgle. Test of _SYNCSTG.
|