2011-09-15 7 views

答えて

2

これは、Windows APIなどのネイティブウィンドウイングAPIのほとんどが、メッセージ(入力イベントなど)が処理されるためにメッセージングが正しく機能するようにスレッドアフィニティが組み込まれているためです。単一のスレッド(すなわち、メッセージポンプ)内のキュー。

このように、この機能をラップするグラフィカル要素(Windowsフォームなど)は、コアAPIからこの制限を継承します。

このように、一部のフレームワークでは、このような制限はありません。たとえば、WPFではデータバインドされたプリミティブがバックグラウンドスレッドから変更できるようになり、4.5ビルドではコレクション内の項目をバックグラウンドスレッドから変更することさえ可能になります。スレッド同期要件は内部的に処理されます。

関連する問題