LOCKステートメントによる排他制御の実現
[OS]ALL
[リリース] 8.1, 8.2
[キーワード] LOCK STATEMENT
[質問]SASデータセット、SASカタログに対して排他制御を行ない、他からの更新処理等を抑止させることができますか。
[回答]
SAS/SHAREのLOCKステートメント等を利用することにより実現できますが、SAS System 8eでは、Base SASでLOCKステートメントの機能を利用できるようになりました。 LOCKステートメントで排他制御が設定されている間、他のセッションからは参照・更新の一切の処理ができなくなります。
■ LOCKステートメントの書式
■ 使用例 /* saslibライブラリのsasdataデータセットへの排他制御を開始 */ LOCK saslib.sasdata ; /* 他のSASセッションより、下記のプログラムを実行 */ LIBNAME saslib 'c:\sasdata\saslib' ; PROC PRINT DATA=saslib.sasdata ; RUN ; ■ 処理結果 ERROR: A ロックを SASLIB.SASDATA.DATA に適用できません。 another process によって既にロックされています。 ■ 注意事項
|