Форум: "Основная";
Текущий архив: 2005.03.13;
Скачать: [xml.tar.bz2];
ВнизОбьясните, пж, почему поток без sleep(1) тормозит? Найти похожие ветки
← →
Zilog © (2005-02-24 12:31) [0]Обьясните, пж, почему поток без sleep(1) тормозит?
Что собственно, Sleep(1) делает? (кроме задержки в одну мс)
← →
Инструктор (2005-02-24 12:32) [1]кто тормозит? как это выражается?
← →
DiamondShark © (2005-02-24 12:32) [2]Кроме задержки он ещё передаёт процессорное время другим потокам.
← →
Zilog © (2005-02-24 12:38) [3]А где про это можно подробно почитать?
← →
DiamondShark © (2005-02-24 12:45) [4]Поставить курсор на слово Sleep и нажать F1.
← →
Digitman © (2005-02-24 12:46) [5]
> Zilog © (24.02.05 12:38) [3]
> А где про это можно подробно почитать?
в MSDN, в Microsoft Knowledge Base
← →
Anatoly Podgoretsky © (2005-02-24 12:58) [6]Насчет торможения мы так и не узнаем.
← →
Zilog © (2005-02-24 13:54) [7]>>(24.02.05 12:58) [6]
така чего узнавать то? На форуме куча тем была с вопросом почему тормозит поток и с советами вставить sleep. Прдполагалось, что с ситуацией знакомы многие.
← →
Инструктор (2005-02-24 13:57) [8]так поток тормозит сам по себе или тормозит что другое? Формулировать верно уборщица тетя Глаша будет?
вот что тут тормознутого:for i:=1 to 1000 do begin
......
end;
в сравнении с:for i:=1 to 1000 do begin
......
sleep(1)
end;
?!
← →
VMcL © (2005-02-24 14:15) [9]>>Инструктор (24.02.05 13:57) [8]
Я бы даже сказал как раз наоборот: второй вариант более тормознутый.
:D
← →
Anatoly Podgoretsky © (2005-02-24 14:24) [10]Zilog © (24.02.05 13:54) [7]
Не то! Тебе Инструктор (24.02.05 12:32) [1]
кто тормозит? как это выражается?
Задал конкретный вопрос. Будь добр ответит на него, может окажется все с точностью наоборот.
← →
DiamondShark © (2005-02-24 14:25) [11]Попробуем протелепать.
"Тормозит" == "занимает много процессорного времени".
Угадал?
← →
Anatoly Podgoretsky © (2005-02-24 14:33) [12]Не ну это к торможению никакого отношения не имеет. Интересует ответ количественный, например со sleep(1) поток отрабатывает за N ms, а без него за N+M ms
← →
Jolik © (2005-02-24 18:28) [13]дело в том, что когда Вы вызываете sleep - это значит Вы сами передаете управление другим потокам и система знает, что в течение одной милисекунды вам его можно не возвращать. В общем случае Вы передаете управление "процессу" который зовется "Бездействие системы" - поэтому снижается показатель загрузки процессора, ибо он там не учавствует.
Если sleep не вызывать - "Бездействие системы" никогда не получит управление, но это не значит, что комп будет медленно работать, ибо многозадачность в NT вытесняющая.
Но, все равно, так делать нельзя, хотя бы потому, что пользователь когда увидет - ахнет, и будет смеяться...
← →
Набережных С. © (2005-02-24 18:51) [14]
> Jolik © (24.02.05 18:28) [13]
> Если sleep не вызывать - "Бездействие системы" никогда не
> получит управление, но это не значит, что комп будет медленно
> работать, ибо многозадачность в NT вытесняющая.
> Но, все равно, так делать нельзя, хотя бы потому, что пользователь
> когда увидет - ахнет, и будет смеяться...
Дык смеяться уже хочется, даже еще не глянув и не ахнув...
← →
iskatel © (2005-02-25 00:20) [15]2Jolik а ты поставь бездействию системы приоритет time critical :-)
2Zilog
/"...На форуме куча тем была с вопросом почему тормозит поток..."/
так чего тебе еще надо то???
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2005.03.13;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.04 c