0

私はマルチスレッド (および同時実行、TPL などの関連するもの - .NET、Windows など) を学んでおり、この質問に対する答えが私の疑問の量を大幅に減らすことを願っています。

コンソールでは必要ないのに、WPF UI では Dispatcher を介した (複数のスレッドからの) 出力が必要なのはなぜですか? この説明が、コンソール クラスはスレッド セーフであるという MSDN ドキュメントでの過度に使用され、定義
が不十分なフレーズ よりももう少し詳細になることを願っています(または、あいまいな用語の使用をまったく避ける方がよいでしょう)。

更新:
Justin Pihony のコメントに感謝し
ます
なぜ (またはどのように) 読み取りが WPF UI のスレッドセーフを侵害するのですか?

私は、.NET Framework 4 での並列プログラミング: はじめにからのフレーズを明確にしようとしています。

「Console クラスはスレッドセーフなので、コンソール アプリケーションに問題はありませんでした。しかし、WPF では、専用の UI スレッドによってのみ UI コンポーネントに安全にアクセスできます」

回答を読むための提案されたトピック:

4

1 に答える 1

0

WPF/WinForm は、シングル スレッドに親和性があるウィンドウを作成して使用します。

コンソールはウィンドウを使用せず、出力/応答文字列のみを使用します。

それは「ウィンドウ開発の設計による」です。

于 2013-04-03T04:17:16.867 に答える