AutoCAD 上の図面に他形式のファイルを読み込む IMPORT[読み込み] コマンドや、図面内のオブジェクトを他のファイル形式で保存する EXPORT[書き出し] コマンドを起動すると、処理の開始時にバックグラウンド ジョブとして実行されることを知らせるメッセージが表示されます。
「ジョブ」は一連の処理の単位を指しますが、ここでは「コマンド」と考えて差支えありません。「バックグラウンド」は、コマンドを起動した AutoCAD ではなく背後で起動した別の処理で実行されることを意味します。逆に、コマンドを起動した AutoCAD は、前面でユーザ操作を受け付ける対話処理も受け付ける「フォアグラウンド」な「ジョブ」と言えます。
バックグラウンド ジョブの利点は、フォアグラウンド ジョブの動作を妨げない点にあります。扱うファイルのサイズや内容にもよりますが、IMPORT / EXPORT コマンドの処理には時間がかかる場合があります。そのような場面でも、バックグラウンド ジョブ実行中に AutoCAD の操作を継続できるのは、この恩恵によるものです。
ただ、あまりに多くのバックグラウンド ジョブを起動してしまうと、メモリや CPU リソースを多く消費してしまい、結果としてフォアグラウンド ジョブの操作への反応が遅くなってしまうと本末転倒です。このため、処理中には添付のようなダイアログを表示して、過剰な負荷がかからないようになっています。
さて、Windows で AutoCAD を利用して IMPORT コマンド、あるいは、EXPORT コマンドの実行したときに、[Ctrl] + [Alt] + [Del] キーを同時に押してタスクマネージャーを起動してみると、[プロセス] タブで、フォアグラウンドで動作している AutoCAD に関連付いたバックグラウンド ジョブ「AutoCAD Translators」を確認することが出来ます。
この「AutoCAD Translators」の実態は、AutoCAD のインストール フォルダ直下にある AcTranslators.exe です。AcTranslators.exe は Windows のコマンド プロンプトで実行出来るコンソール アプリケーションで、その使用方法やカスタマイズはオンライン ヘルプ等でも触れられていない未サポートなものです。
ただ、少しだけ触れておくと、-i オプションで変換対象の変換前のソース ファイルを、-o オプションで出力先の変換後ファイル名を指定するようになっています。
例)
AcTranslators.exe -i C:\temp\Glass-Roof.dwg -o C:\temp\Glass-Roof.igs
もう1つ、むしろ、こちらのほうが有名かもしれませんが、バックグラウンド ジョブで利用されるのが PLOT コマンドや PUBLISH コマンドを使った印刷処理です。既定値では、連続印刷処理を意図した PUBLISH コマンドが、バックグラウンド ジョブに設定されています。
PUBLISH コマンドのバックグラウンド処理で起動されるのは、IMPORT / EXPORT コマンドが利用する AcTranslators.exe よりも少し複雑になるので割愛しますが、やはり、AutoCAD のインストール フォルダ配下にある .exe が起動されることになります。
IMPORT / EXPORT コマンドとは異なり、PLOT / PUBLISH コマンドによる印刷処理は、システム変数 BACKGROUNDPLOT でコントロールすることが出来ます。
バックグラウンド ジョブの実行には、AcTranslators.exe をはじめとした .exe だけでなく、AutoCAD の他のコンポーネントも必要です。もちろん、AutoCAD ライセンスの一部として提供されるものなので、.exe や関連コンポーネントのみを抜き出して他の環境で利用することは、コンプライアンス上、提供物の利用の許容範囲 外になります。ご注意ください。
By Toshiaki Isezaki
コメント
コメントフィードを購読すればディスカッションを追いかけることができます。