Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / чисто теоритический вопрос по php / 2 сообщений из 2, страница 1 из 1
12.04.2012, 00:01:57
    #37749491
skuwakin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
чисто теоритический вопрос по php
Поясните, плиз, кто знает как все таки работает функция fread... Уже мозг закипает, запутался опять в трех соснах... Необходимо пропустить через некий посредник видеофайл, чтобы он начал воспроизводится плеером телевизора (напрямую он не хочет его воспроспроизводить, причина не ясна). Написал скрипт. Работает, но.... в непредсказуемый момент времени http сервер (lighttpd) начинает пожирать память. Вот основое тело скрипта

Код: php
1.
2.
3.
4.
	while (!feof($fd) && !connection_status()) {
	  echo fread($fd, 8192);
	  flush();                                        
	}



Есть подозрения (и они подтверждаются) что сервер отдает быстрее, чем плеер успевает воспроизвести, вот lighttp и пытается сохранить это прочитанное в своих буферах. Но тогда совершенно не понятно как читаются данные по fread... получается асинхронно... иначе бы после прочтения указанной порции чтение приостановилось бы до заваершия команд обработки конца цикла. В общем подскажите плиз как правильно писать такие алгоритмы.

p.s. размер считываемых байт уменьшал - не помогает.
...
Рейтинг: 0 / 0
12.04.2012, 09:13:22
    #37749726
Anjey aka PM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
чисто теоритический вопрос по php
fpassthru i your case
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / чисто теоритический вопрос по php / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]