1

Silverlight のスレッド化について質問があります。

私は主にwinForms のバックグラウンドから来ており、通常は次のラッパー クラスを使用してスレッド化

を行っています。 Silverlight で使用します。その理由は、ExecutionContext が [SecurityCritical] 属性でマークされており、Silverlight から呼び出すことができないためです。

Silverlight 用の同様のラッパー クラスはありますか、またはこの問題を回避する方法はありますか?

ありがとう!

4

3 に答える 3

1

WinFormアプリケーションでも引用したクラスは使用しません。それはまだThread.Abortアプリドメインを破壊する可能性がある(そしておそらくそうするだろう)ものを使用しています。代わりに、タスク並列ライブラリの新しいキャンセルメカニズムを使用してください。ただし、作業項目をキャンセルするためのアプローチ全体を再考する必要があります。これは、強制終了に依存できなくなり、代わりに協調終了を使用する必要があるためです。利点は、後者がアプリドメインの破損を回避することを保証できることです。

于 2012-05-21T15:12:29.413 に答える
0

SL5 でのみ使用可能な (CancellationTokenSource 経由の) キャンセル トークンを見てください。MSDN mag ref で使用されているものと同様のメカニズムを使用します。

これは良い「ハウツー」記事です。いくつかのMSDN リファレンスはこちら長いが素晴らしい記事はこちら

XAML プログラミングへようこそ :) 振り返ることはありません。

于 2012-05-21T15:21:27.323 に答える
0

"Task" ( Task Link ) または BackgroundWorker ( BackgroundWorker Link )を使用するために既存のコードを書き直します。

技術的進化をもたらす最新のテクノロジーを使用する必要があります。

于 2012-05-25T13:03:17.597 に答える