Здравствуйте, MusicWriter, Вы писали:
MW>Обновляю изображение в цикле
MW>
MW>for (int i = 0; i < 5000; i++)
MW>{
MW>// Вывожу изображение.
MW>//Затем запускаю отдельным потоком проигрывание музыки. Правильно ли я делаю???
MW>CWinThread* pPlaySoundThread = AfxBeginThread(PlayAlertSoundThread,
MW> AfxGetMainWnd()->GetSafeHwnd(), THREAD_PRIORITY_NORMAL);
MW>}
MW>
MW>Как это сделать правильно?
MW>При такой реализации комп сильно тормозит. Видимо создаётся много потоков и всё не успевают обрабатываться. Может их как-то грохать надо а?
Видимо, так и есть — 5000 потоков — не шутка

. Я бы:
Сделал поток, который отвечает за проигрывание музыки отдельно. Когда нужно ее проиграть, посылал бы ему сообщение (SendMessage/PostMessage/объекты ядра)
Если все-таки тебе охота в отдельных потоках играть звуки, использовал бы потоковый кэш — может помочь
Хм... А как вообще должно выглядеть то, что ты хочешь сделать? Если изображения выводятся очень быстро, то будет 5000 обновременно играющих звуков — это ли нужно?