ユーザー。答えが見つからない問題に直面しています。私は(C#で)スレッディングに慣れていないので、この問題に遭遇しました。エフェクト付きのこの画像エディターを持っていますが、実行が遅すぎるため、スレッドに分割しようとしました。問題は、彼が常に効果のリストの最後の項目で「CreatePreview」コマンドを実行することです。「Black/White」、「Sature」、「GreenFilter」のエフェクトを有効にすると、greenfilter を使用して 3 つのプレビューを作成しようとします。
誰かがこの問題で私を助けてくれますか?
private void CreatePreviews(string fileName, List<IEffect> effects)
{
List<Task> tasks = new List<Task>();
foreach (var effect in effects)
{
//previews.Add(effect, CreatePreview(fileName, effect));
Task task = new Task(delegate()
{
string result = CreatePreview(fileName, effect);
Dispatcher.BeginInvoke(new Action(
delegate()
{
ShowPreview(result, effect.DisplayName);
}));
});
task.Start();
}
}