Если не делать этого (или делать Sleep(0) - управление вернётся сразу же), то занятость проца будет 100%. Из-за этого, например, нельзя поднимать приоритет потоку эмуля.Сообщение от Alchemist
Другие задачи заберут время не когда захотят сами, а когда это решит планировщик. Он это обычно делает когда не нужно, и забирает всё сразув результате возможны заметные "паузы" в работе раз в несколько секунд.
Под w2003 тестировать возможности не было (только 2K Pro, XP, +/- несколько разных SP), результат везде одинаков - 15мс. Может быть MS внесли изменения в работу планировщика?Сообщение от SMT
Всё же, я думаю дело в каких-то других прогах, так как timeBeginPeriod имеет глобальный эффект. Можно попробовать закрыть всё лишнее (у меня влияет kX Mixer). К CPU это IMHO отношения не имеет - то же самое наблюдалось и на 4м пне с HT (измерялось моим тестом). Но быстрый проц успевает уложиться в оставшееся время.
Вот мои тесты на чистой 2K (под XP тоже самое)// без предварительного вызова timeBeginPeriod
CPU AuthenticAMD at 1666 MHz
running Windows NT 5.0.2195
Sleep(1) time = 15623 microseconds
Sleep(1) time = 15625 microseconds
Sleep(1) time = 15600 microseconds
// предварительно запускается wait.exe - "изолированный" порцесс, делающий timeBeginPeriod
CPU AuthenticAMD at 1666 MHz
running Windows NT 5.0.2195
Sleep(1) time = 1952 microseconds
Sleep(1) time = 1953 microseconds
Sleep(1) time = 1952 microsecondsIMHO если периодически отдавать время системе (только уж не по 15мс), то можно повысить приоритет и в оконе, особенно если на переднем плане. Только если где случится jmp $, то трубаСообщение от Vladimir Kladov
![]()
А с хуками - хитро, это уже хирургия![]()
ЗЫ: Всё сказанное про слип не вкоем случае не относится к мастдаям - там точность хорошая.




в результате возможны заметные "паузы" в работе раз в несколько секунд.
Ответить с цитированием