rshコマンド連続発行について
- 題名: rshコマンド連続発行について
- 著者: zono
- 日時: 2010/09/28 16:03:09
- ID: 27365
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[1]: rshコマンド連続発行について
- 著者: shu
- 日時: 2010/09/28 17:41:28
- ID: 27366
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[2]: rshコマンド連続発行について
- 著者: zono
- 日時: 2010/09/29 9:36:58
- ID: 27368
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[3]: rshコマンド連続発行について
- 著者: shu
- 日時: 2010/09/29 10:27:56
- ID: 27369
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[4]: rshコマンド連続発行について
- 著者: zono
- 日時: 2010/09/29 14:19:23
- ID: 27370
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[5]: rshコマンド連続発行について
- 著者: shu
- 日時: 2010/09/29 18:04:20
- ID: 27371
- この記事の返信元:
- この記事への返信:
- ツリーを表示
分類:[.NET]
本掲示版には毎回お世話になっております。
Processクラスを使用してrshコマンドを特定のサーバー(Linux)に複数発行した
ところ、rshの応答がもらえず処理が継続できない事象が発生しました。
複数発行は、非同期デリゲートを使用してマルチスレッドで発行しています。
(スレッド数は12個発行しています)
事象としては、最初に実行すると正常に動作するのですが、処理終了後すぐに
再度実行すると上記の事象が発生します。
またプロセスを終了し、再度プロセス起動して発行すると正常に結果を
取得することができます。またプロセスを終了せずにしばらく時間をおくと
正常に動作します。
タスクマネージャで確認すると正常に動作するときは、順次rsh.exeが起動
されていくのですが、異常時は急に複数のrsh.exeが起動されています。
(新規でrshを起動しているのではなく、再利用しているように見えます。
または、Processクラスでは終了していると認識しているが、実際にはrshの
後処理等で終了していないように感じます。あくまでも推測ですが・・・)
Processクラスの解放等に問題があるのかと思っていましたが、
実行時に新しくオブジェクトを生成しているため、問題ないと認識しています。
もし心当たりのある方がいらっしゃったら指摘して頂けると助かります。
また以下にProcessクラス起動時の処理を記述します。
(実際には、以下のプロセスが非同期で複数実行されます)
Dim stinfo As New Diagnostics.ProcessStartInfo
------------------------------------------------------
'ProcessStartInfo情報設定
stinfo.FileName = rsh.exe
stinfo.CreateNoWindow = True
stinfo.WindowStyle = ProcessWindowStyle.Hidden
stinfo.Arguments = リモート先装置名 -l ユーザー名 実行シェル名(フルパス)
'Processクラスの生成
Proc = New Process
Proc.StartInfo = stinfo
'プロセス起動
Proc.Start()
Proc.WaitForExit()
・
・
・
以降結果判定処理
--------------------------------------------------------
申し訳ございませんが、よろしくお願い致します。