Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 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.046 c
10-1085233283
Cyber
2004-05-22 17:41
2005.03.13
Вставка даных в Word


4-1107179861
TAHAT
2005-01-31 16:57
2005.03.13
Как приостановить выполнение функции, вызванной из DLL


9-1103298254
-=SS=-
2004-12-17 18:44
2005.03.13
GlScene Texture


8-1101366528
_Nikolay
2004-11-25 10:08
2005.03.13
Как сделать клиентскую область формы на весь экран ?


1-1109288105
Vand777
2005-02-25 02:35
2005.03.13
Не ставится Update 1 на Delphi 2005 Arhitect Trial





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский