Previous | Contents |
In the earlier example of Superlock to limit the number of interactive logins within a cluster, the 2nd and subsequent logins that used the Lock command exited with the error
%SYSTEM-W-NOTQUEUED, request not queued |
%SYSTEM-W-NOTQUEUED, request not queued %SYSTEM-F-TIMEOUT, device timeout |
$ Lock /id=parent_id /mode=crmode PARENT_RESOURCE $ Lock /id=lock_id /parent=parent_id /mode=prmode CHILD_RESOURCE |
$ Lock /id=parent_id /mode=crmode PARENT_RESOURCE $ Lock /id=lock_id1 /parent=parent_id /mode=prmode CHILD_RESOURCE1 $ Lock /id=lock_id2 /parent=parent_id /mode=prmode CHILD_RESOURCE2 $ Lock /id=parent_id /release /sublock $ Lock /id=parent_id /release |
The combination of /SUBLOCK and /RELEASE causes all sublocks of the lock specified by /ID to be released. It does not release the parent lock itself. You need to subsequently release the parent lock using /RELEASE and /ID without /PARENT. |
The use of /REPORT_BLOCKERS is only useful in combination with the /NOWAIT qualifier. If /WAIT (the default) is used, then Superlock will only exit to DCL when the lock is granted (and thus no longer blocked). |
$ Lock FOOBLE /write /id=lock_id /nowait /report %SPRLCK-E-REPORTNEW, Can't report blockers on a new lock request $ Lock FOOBLE /id=lock_id /mode=nlmode $ Lock /id=lock_id /mode=write /report /nowait %SYSTEM-W-NOTQUEUED, request not queued $ $ Show symbol SUPERLOCK* SUPERLOCK_BLOCK_1 = "2024EFC1" SUPERLOCK_BLOCK_COUNT = "1" $ |
Previous | Contents | Contents |