ひしだまの変更履歴

ひしだまHPの更新履歴。
主にTRPGリプレイの元ネタ集、プログラミング技術メモと自作ソフト、好きなゲームや音楽です。

CreateProcess関連

2013-01-10 19:49:10 | PG(C言語)

Windows API(C言語)のCreateProcessCreatePipe・DuplicateHandleConsoleCtrlHandlerについてメモ。
この辺りについては昔から色んな人が色々書いているので、今回はエラー処理も略さず書くようにしてみた。 

プロセスの生成・別プログラムの実行はUNIX(POSIX)のforkexecには似ていないが、パイプとかハンドルの複製とかはUNIX(POSIX)のpipe・dup2に似ている。
でもハンドルの継承まわりは理解できるまで超意味不明だった(爆)

しかしC言語は面倒くさいわー。
今回の例はgccで書いたからまだマシだけど、エラー時もハンドルをちゃんとクローズしようと思ったら、try~finallyが欲しくなる^^;
素直にsetjmp/longjmpを使う方が楽かもしれない(苦笑)

たまにC言語をやってみると、Javaがいかに便利か(C言語の不便な点を改良しようとしたか)よく分かる。
Javaが不便だとか言ってる人は、C言語は絶対出来ないなー。
そんで、そういう人がScalaを覚えたらJavaには戻れないだろうなw

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする