|
3150 / 370 / 3
Регистрация: 08.08.2009
Сообщений: 1,126
|
||||||
Как Sleep() считает время ?04.09.2009, 20:47. Показов 11461. Ответов 11
Метки нет (Все метки)
Добрый вечер
Из следующего кода возник один вопрос:
0
|
||||||
| 04.09.2009, 20:47 | |
|
Ответы с готовыми решениями:
11
Не правильно считает время выполнения программы |
|
158 / 157 / 16
Регистрация: 26.07.2008
Сообщений: 549
|
|
| 04.09.2009, 21:06 | |
|
Функция Sleep(n) приостанавливает поток цикла, на нужное время, измеряемое в миллисекундах. Она используется чтобы не загружать систему под завязку.
Функция Sleep(n) не привязана к системному времени.
0
|
|
|
3150 / 370 / 3
Регистрация: 08.08.2009
Сообщений: 1,126
|
||
| 04.09.2009, 21:08 [ТС] | ||
0
|
||
|
158 / 157 / 16
Регистрация: 26.07.2008
Сообщений: 549
|
||
| 04.09.2009, 21:13 | ||
|
Добавлено через 50 секунд При запуске приложения происходит выделение памяти под процесс, в часть которой и загружается код программы. Поток - объект внутри процесса, отвечающий за выполнение кода и получающий для этого процессорное время.
0
|
||
|
3150 / 370 / 3
Регистрация: 08.08.2009
Сообщений: 1,126
|
|
| 04.09.2009, 22:36 [ТС] | |
|
Почитал я про потоки здесь и здесь
Не понимаю чем это может помочь Sleep() посчитать время. Операционная система быстро переключается между потоками , для обеспечения одновременной работы сразу нескольких прог . Каждому потоку выделяется процессорное время (несколько милисекунд) , после этого процессор выполняет другой поток. Значит поток , в котором работает Sleep() не может выполнятся постоянно. Следовательно Sleep() не может постоянно считать процессорное время. Тогда как Sleep() считает время ?
0
|
|
|
1 / 1 / 0
Регистрация: 02.09.2009
Сообщений: 7
|
|
| 04.09.2009, 23:14 | |
|
Может он просто считает время по миллисекундам(1мс+1мс+1мс), а не методом времени окончания(начало 02:12:20, конец 02:12:30), то есть он обращается не ко времени как к целому, а к его изменению/течению пока не достигнет 10000?
В таком случае даже меняя время, ты изменишь его счёт на какие-то жалкие доли миллисекунды.
0
|
|
|
1857 / 714 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
|
|
| 04.09.2009, 23:23 | |
|
А может быть, так как время изменяется централизованно где то там в ядре, виндовс просто вносит поправки во все отсчеты времени которые он ведет?
0
|
|
|
3150 / 370 / 3
Регистрация: 08.08.2009
Сообщений: 1,126
|
|||
| 04.09.2009, 23:25 [ТС] | |||
0
|
|||
|
1857 / 714 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
|
|
| 04.09.2009, 23:31 | |
|
Так ведь Sleep() сам по себе не считает. Считает планировщик потоков. У него есть несколько списков с потоками. Один из них -потоки которые ожидают какого-то ивента. Они не получают процессорного времени, а вот как этот ивент наступит(их, наверное, считает ядро по прерываниям таймера), так их выполнение продолжается.
1
|
|
|
3150 / 370 / 3
Регистрация: 08.08.2009
Сообщений: 1,126
|
|
| 04.09.2009, 23:39 [ТС] | |
|
Для меня все это малопонятно. Главное что Sleep() не зависит от времени . Главное для проги , которую я делаю. Всем спасибо.
0
|
|
|
3150 / 370 / 3
Регистрация: 08.08.2009
Сообщений: 1,126
|
||
| 05.09.2009, 11:14 [ТС] | ||
0
|
||
|
158 / 157 / 16
Регистрация: 26.07.2008
Сообщений: 549
|
|
| 05.09.2009, 11:19 | |
|
0
|
|
| 05.09.2009, 11:19 | |
|
Помогаю со студенческими работами здесь
12
Sleep(), не точно считает миллисекунды System.Threading.Thread.Sleep считает неправильно, что сделать? Sleep(1000): Как сделать паузу и в тоже время иметь контроль над формой?
Неправильное отображение текста в TextLabel во время Sleep Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Вывод данных через динамический список в справочнике
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2.
Задача: вывести данные из ТЧ нетипового документа. . .
|
Функция заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению.
На форме документа создается. . .
|
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
|
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
|
|
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
|
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию.
2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
|
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
|
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO
Апнулись до NET10.
Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта
так и в интерактивном режиме. из сложностей - чисто функциональный подход.
Решил. . .
|