Re[2]: Multithreading и DirectX9
От: Sergey A. Sablin Россия http://www.elecard.com
Дата: 28.09.04 06:28
Оценка: 2 (1)
Здравствуйте, .Mistery, Вы писали:

M>Ну вот сам ответил на свой вопрос, значит все таки пересекаются, может пытаешься отрендерить то что еще не проинициализировано или не загружено, в Multithreading это нормальная ситуация. Мне кажется дело все таки в доступе к разделяемым данным — нужно синхронизировать, как найти что что нужно синхронизировать? вот в чем вопрос!


Intel Threading tools тебе поможет.
Сергей.
Multithreading и DirectX9
От: Vladka Украина  
Дата: 27.09.04 11:17
Оценка:
Доброго времени суток всем!

Ситуация такая:
Загружается игра, имеем два потока. Один поток производит отрисовку, другой — загружает данные (выделяются ресурсы в видеопамяти и т.д.). Отрисовываемые и загружаемые данные 100% не пересекаются. Девайс создан с флажком D3DCREATE_MULTITHREADED. В неопределенный момент программа валится, где-то в дебрях директовских библиотек.
Если кто-нибудь сталкивался с данной проблемой или просто есть мысли по этому поводу — откликнитесь.

З.Ы. по-отдельности все работает, т.е. если сначала загрузить, а потом рисовать, или наоборот, то все в порядке

Заренее благодарен.

Влад
Re: Multithreading и DirectX9
От: .Mistery Беларусь  
Дата: 27.09.04 14:23
Оценка:
Здравствуйте, Vladka, Вы писали:

V>Доброго времени суток всем!


V>Ситуация такая:

V>Загружается игра, имеем два потока. Один поток производит отрисовку, другой — загружает данные (выделяются ресурсы в видеопамяти и т.д.). Отрисовываемые и загружаемые данные 100% не пересекаются. Девайс создан с флажком

Как такое может быть, что 100% не пересекаются. Ты же рендеришь то что загружаешь, правдо?

V> D3DCREATE_MULTITHREADED. В неопределенный момент программа валится, где-то в дебрях директовских библиотек.

V>Если кто-нибудь сталкивался с данной проблемой или просто есть мысли по этому поводу — откликнитесь.

V>З.Ы. по-отдельности все работает, т.е. если сначала загрузить, а потом рисовать, или наоборот, то все в порядке


Ну вот сам ответил на свой вопрос, значит все таки пересекаются, может пытаешься отрендерить то что еще не проинициализировано или не загружено, в Multithreading это нормальная ситуация. Мне кажется дело все таки в доступе к разделяемым данным — нужно синхронизировать, как найти что что нужно синхронизировать? вот в чем вопрос!

V>Заренее благодарен.


V>Влад
... << RSDN@Home 1.1.3 beta 1 >>
Мы — маньяки, должны помогать друг другу!
Re: Multithreading и DirectX9
От: Vladka Украина  
Дата: 28.09.04 14:00
Оценка:
Прошу прощения!
Я столько раз пробовал устанавливать/снимать флажек D3DCREATE_MULTITHREADED, что в итоге его не поставил.
Все нормально работает. А данные все-таки не пересекаются
Еще раз извиняюсь, спасибо за ответы.

Влад
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.