Форум программистов, компьютерный форум, киберфорум
C/C++: WinAPI
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.70/40: Рейтинг темы: голосов - 40, средняя оценка - 4.70
430 / 384 / 200
Регистрация: 12.08.2011
Сообщений: 1,610
1

Смысл команды Sleep(0)

13.12.2012, 10:56. Показов 8066. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
И какое число передавать этой функции, чтобы пауза была минимальной, но всё же чтоб была хоть какая-то? Где-то встречал информацию, что реальная длительность паузы может быть не только больше, но и меньше заданной.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.12.2012, 10:56
Ответы с готовыми решениями:

Есть ли смысл писать Thread.Sleep(0)?
Всем доброго времени суток. У меня есть несколько потоков, в которых есть задержка по времени....

Команды ожидания - Timer , Sleep , Wait?
Делаю секундомер , для него нужны команды ожидания . А их в C# нет ) . Помогите решить проблему ....

Как разбудить поток после команды Thread.sleep(t) ?
Подскажите, как разбудить поток после команды Thread.sleep(t), не используя многопотоковость?...

Смысл команды add bx, [di+06h]
add bx, - Смысл команды, способ адресации, формат команды, физический адрес, если CS=A600h,...

3
836 / 343 / 67
Регистрация: 20.11.2012
Сообщений: 795
13.12.2012, 17:27 2
При Sleep(0) поток отказывается от своего кванта времени и дает планировщику разбудить другие готовые к исполнению потоки, сам при этом оставаясь в состоянии готовности (т.е. если нет других потоков того же приоритета, то сразу же произойдет возврат из функции и выполнение потока продолжится).
Если же не 0, то поток переходит в ожидающее состояние на время, примерно равное аргументу.
Точность этого времени напрямую зависит от разрешения системных часов. Подробнее о том, как определить точность - читай в MSDN (http://msdn.microsoft.com/en-u... s.85).aspx)
1
430 / 384 / 200
Регистрация: 12.08.2011
Сообщений: 1,610
13.12.2012, 19:55  [ТС] 3
Я погуглил и выяснил, что на ХР точность определения - 15мс. Например, при Sleep(50) реальная пауза была от 47 до 63. Так что меньше 15 ставить смысла нет. Один человек даже в игрушке (арканоид) прописал Sleep(30). Как раз два кванта по 15мс. Это число я и решил взять за основу. Тормозов не должно быть, тем более у меня не игрушка.
0
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
14.12.2012, 20:28 4
WhiteP, Вы забыли сказать, что это не самый лучший вариант. Нужно инструкция процессору. Если, например, где нибудь захотите цикл ожидания. А так в лабе сойдет.
0
14.12.2012, 20:28
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.12.2012, 20:28
Помогаю со студенческими работами здесь

Файл должен выполнять команды поочередно, но выполняет все команды одновременно
Добрый день! Столкнулся с небольшой проблемой, уверен такие вопросы уже возникали Файл должен...

По краткому названию команды и фамилиям ее участников, построить полное название команды
Всем привет) Я тут решил полазить по http://********, что бы немножко потренероваться, и наткнулся...

Реализовать консольную утилиту, принимающую от пользователя команды с параметрами и выполняющую эти команды
Сразу хочу сказать, что меня интересуют не аргументы int main(int argc, *char) ! Пишу...

После выполнения определённой команды не выполняются последующие команды
Объясните, пожалуйста, почему может останавливаться выполнение второй и далее комманд? cd...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru