Naknet blog

Nothing to believe, nothing else to believe.

<< というわけで | main | Elements Garden >>

パイプ処理について

Regex.exeでパイプのテストをしていると、
「プロセスが、存在しないパイプに書き込もうとしました。」
というエラーが出ることがありました。

どこがおかしいのかと探していたのですが、どうやらこれは出力元のプログラムに対するエラーのようです。
つまり、出力中のプログラムがまだ出力中なのに入力側が終了してしまうと、outputに行き場がなくなってしまい、結果としてエラーになる、ということです。

この問題は、入力側が終了する前に、EOFが来るまで読み込んでしまえば解決します。
C++なら、

// consume remaining output
std::cin.ignore( std::numeric_limits< int >::max() );
なんてどうでしょうか?


comments (2) | trackbacks (0)

Comments

Appears surfing on-line above 3 hours at present, but I never uncovered any kind of appealing post for instance your own. It truly is beautiful worthy of adequate personally.. 惘悋擯悋 Many people feel, if just about all web owners along with blog owners created excellent written content while you most likely did, online could possibly be a lot more helpful than ever.
惘悋擯悋 | 2016/10/24 01:54 PM
スーパーコピーブランド腕時計N級品
ブレゲコピー時計のスーパーコピーブランド腕時計N級品 通販、精巧に作られたのコピー腕時計。
ブランドブレゲコピー時計N級品をご 購入方は、こちらへ,品質保証!
偽物時計は本物ともっとも似 ている最高品質の素材を使用し.
ロレックス偽物 | 2018/04/15 11:17 AM

Comment Form

  • "http"等はNGワードになっています。
  • どうしても投稿できない場合・返信が必要な場合は、メールでお願いします(nospam.を削除してください)。

Trackbacks