Доступ к элементам словаря, созданным в дочернем потоке

В настоящее время я борюсь с потоками и надеюсь, что кто-нибудь сможет четко объяснить, как разрешить следующую ошибку.

У меня есть глобальный Dictionary dic , который я создаю в основном потоке.

Основной поток создает дочерний поток для заполнения словаря изображениями.

Затем основной поток пытается получить доступ к словарю и выдает исключение

Вызывающий поток не может получить доступ к этому объекту, потому что он принадлежит другому потоку

У меня нет проблем с доступом к самому словарю, например. dic.ContainsKey ("key") работает нормально, ошибка возникает только тогда, когда я пытаюсь получить доступ к BitmapImage в словаре.

Я предполагаю, что это потому, что BitmapImages, хранящиеся в словаре, создаются в дочернем потоке, и это вызывает проблему - есть идеи, как я могу это обойти?

Я просмотрел множество руководств и советов по потоковой работе здесь но похоже, что везде рассказывается, как получить доступ к объекту родительского потока из дочернего потока, тогда как я пытаюсь сделать наоборот.

Спасибо.

5
задан Muad'Dib 12 February 2012 в 01:14
поделиться