Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > Передать значение в ожидающий поток


Автор: Stas123 24.9.2012, 18:50
Основная идея модуля.
Издавать разные разные звуки, при вызове метода, в метод передается пазвание звука..
Хочется сделать так - есть поток, который ожидает снятия блокировики и получив тип звука проигрывает его.
Примерно так.
Код

Конструктор
SoundThread = new Thread(() =>
                                        {
                                            signal.WaitOne();
                                            *
                                            player.Play(soundName);
                                        }, 1) { IsBackground = true };

public static void PlaySound(SoundType soundName)
        {
            signal.Set();
        }


Собственно вопрос такой. Как передать из метода  PlaySound параметр soundName в поток, проигравыющий звуки? место в коде, где нужно знать значение soundName помечено звездочкой(*) ?
Нужно учитывать, что звук может ещё не завершиться, и уже придет приказ проиграть другой звук.

Автор: erm0l0v 25.9.2012, 08:29
Либо в потоке в цикле опрашивать некоторое значение, либо подписаться в потоке на событие.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)