- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:リモートシェルで起動したプロセスのデバッグ)
リモートシェルで起動したプロセスのデバッグ方法と効率的なアドバイス
このQ&Aのポイント
- VC.NET2003で開発しているプログラムの中で、リモートシェルを使用して別のプログラムを起動しています。起動されたプログラムにデバッグの必要性がありますが、効率的なデバッグ方法がわかりません。現状はログを仕込んで調査していますが、もっと効率的な方法があればアドバイスをお願いします。
- リモートシェルを使用して起動されたプログラムには通信処理のバグがあり、メモリが壊れている可能性があります。起動元のプログラムはデバッグできるのですが、起動されたプログラムのデバッグ方法が分かりません。現状はログを仕込んで調査していますが、もっと効率的な方法があればアドバイスをお願いします。
- VC.NET2003で開発しているプログラムの中で、リモートシェルを使用して別のプログラムを起動しています。起動されたプログラムには通信処理のバグがあり、メモリが壊れている可能性があるため、デバッグが必要です。現状はログを仕込んで調査していますが、もっと効率的なデバッグ方法があればアドバイスをお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
起動元よりrshで起動先のプログラムを実行し、起動元と起動先のプログラムでソケット通信を行っていると言う事でしょうか? であれば、起動もとのRSHをコメントにして、デバックでConenctを受け付ける側を先に実行し、Conenctするプログラムを後でデバックで実行するではダメですか? あまり長い時間止めておくとタイムアウト等になる可能性もあるので注意が必要ですが。 余談ですが、rshで通信相手を起動するのは何か意味があるのでしょうか? (通常は、どちらかが常駐してまっているかと)
その他の回答 (1)
- na_kirajp
- ベストアンサー率43% (33/76)
回答No.2
>ソースの修正が伴わない方法があれば、助かるなぁと思いますが、やっぱりその方法がベストですか。 デバック=.NETのデバッカと考えれば、やはり起動先もデバックするのは・・・・ 確かにRSHは何とかする必要がありますが・・・ RSHで実際に起動されるのはダミーの処理にする等ではダメですか?そうすればソースの修正なしでいけそうな気がしますが。
質問者
お礼
RSHをダミーの処理にしてみることにします。 色々考えたのですが、ご提案いただいた方法が一番簡単そうです。 起動元は3秒以内に起動先が起動して、リプライを返さなければエラーになるので、その処理を停止させるのが面倒と考えていました。 (タイムアウト処理を管理しているのは、私ではないので、調査する必要がありまして。。) どうもありがとうございました。
補足
>起動元よりrshで起動先のプログラムを実行し、起動元と起動先の… はい。 >であれば、起動もとのRSHをコメントにして… ご指摘の方法でできると思います。ソースの修正が伴わない方法があれば、助かるなぁと思いますが、やっぱりその方法がベストですか。 >余談ですが、rshで通信相手を起動するのは何か意味があるのでしょうか? >(通常は、どちらかが常駐してまっているかと) rshを使うのは、負荷分散を行う為です。(空いているWindowsマシンやLinuxマシン上で走らせます。) 起動先のプログラムは、処理別に複数あるのですが、どれも非常に重いプログラムです。 処理が終われば必要なくなるので、常駐する類のものでもありません。