Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Помогите с функцией sleep()
В итоге через 5 секунд на экран вываливается "54321", а нужно с промежутком в 1 сек.
Думаю вопрос понятен
SAD
Отправлено: 02 Июня, 2010 - 18:09:07
Постоянный участник
Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009 Откуда: Днепропетровск, Украина
Помог: 75 раз(а)
sleep тут не катит. Тебе обязательно на php?
4php
Отправлено: 02 Июня, 2010 - 18:27:03
Новичок
Покинул форум
Сообщений всего: 2
Дата рег-ции: Июнь 2010
Помог: 0 раз(а)
Да, нужно на php. А если не sleep, то что?
Пробовал sleep + flush, получилось, но коряво, вываливает сразу первые 3 строки а потом остальные с задержкой в секунду
Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009
Помог: 17 раз(а)
4php пишет:
Нужно выводить по 1й строке в секунду
Помимо проблемы с буферазацией вывода которая решается с помощью функцию типа ob_* есть еще один важный момент - в реальном PHP-скрипте генерация и вывод строк тоже занимает определенное время особенно если они составляются каким-то достаточно сложным алгоритмом - поэтому в таком случае лучше разбить ваш PHP-скрипт на два исполняемых потока один из которых будет генерировать строки и добавлять их в буфер - а второй поток будет его сбрасывать раз в нужный интервал времени
Кроме того если вам нужна большая точность вывода в 1 секунду то лучше реализовать это на клиентской стороне с помощью JS-скрипта - ведь задержку составляет не только генерация строк но и передача их по каналам сети интернета
----- Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.