Модераторы: korob2001, ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> как заставить программу ждать N милисекунд? аналог Thread.sleep() в Java 
:(
    Опции темы
ochnev
Дата 29.7.2006, 22:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 253
Регистрация: 27.3.2006

Репутация: нет
Всего: нет



Как заставить программу ждать N милисекунд?    smile 
 
PM MAIL   Вверх
nitr
Дата 30.7.2006, 02:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2543
Регистрация: 10.2.2006
Где: Россия :)

Репутация: 37
Всего: 84



Код

sleep 10;
 


--------------------
PM   Вверх
korob2001
Дата 30.7.2006, 20:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2871
Регистрация: 29.12.2002

Репутация: 31
Всего: 61



В примере выше, программа заснёт на 10 секунд, причём меньше чем на секунду заснуть, со стандартным sleep() не получится.
Я так понимаю тебе нужно засыпать именно на доли секунды. Если да, то придётся перегрузить функцию sleep() из модуля Time::HiRes, тогда она будет работать и с числами с плавающей запятой.
Вот пример:
Код

#!/usr/bin/perl

# Перегружаем sleep() из Time::HiRes в текущее пространство имён
use Time::HiRes qw(sleep);

my $count = 0;
while (++$count <= 100) {
       print "$count\n";
       sleep(0.01);  # Теперь можем спать и меньше секунды
}

Если же ты будешь усыплять программу на целое число секунд, тогда воспользуйся примером, который привёл nitr.   

Это сообщение отредактировал(а) korob2001 - 30.7.2006, 20:53


--------------------
"Время проходит", - привыкли говорить вы по неверному пониманию. 
"Время стоит - проходите вы".
PM MAIL WWW ICQ MSN   Вверх
ochnev
Дата 30.7.2006, 20:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 253
Регистрация: 27.3.2006

Репутация: нет
Всего: нет



Спасибо за наводку на Time::HiRes, там есть и такое:

Цитата

Код

usleep ( $useconds )


Sleeps for the number of microseconds specified. Returns the number of microseconds actually slept. Can sleep for more than one second, unlike the usleep system call. See also Time::HiRes::sleep() below.

 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl"
korob2001
sharq
  • В этом разделе обсуждаются общие вопросы по языку Perl
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1874 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.