никак? Т.е. если у клиента подвиснет сеть (tpc) то и весь скрипт подвиснет пока весь стрип не закроется по тайм-ауту?
И tcp вроде как по стандарту тоже все равно, нет никаких тайм-аутов?
Неуевая уязвимость получается
$socket = ...some socket...; // receive-таймаут для уровня \SOL_SOCKET socket_set_option($socket, \SOL_SOCKET, \SO_RCVTIMEO, [ 'sec' => 1, // 1 second 'usec' => 1, // 1 microsecond ]); // send-таймаут для уровня \SOL_SOCKET socket_set_option($socket, \SOL_SOCKET, \SO_SNDTIMEO, [ 'sec' => 1, // 1 second 'usec' => 1, // 1 microsecond ]); // receive-таймаут для уровня TCP socket_set_option($socket, getprotobyname('tcp'), \SO_RCVTIMEO, [ 'sec' => 1, // 1 second 'usec' => 1, // 1 microsecond ]); // send-таймаут для уровня TCP socket_set_option($socket, getprotobyname('tcp'), \SO_SNDTIMEO, [ 'sec' => 1, // 1 second 'usec' => 1, // 1 microsecond ]); //////////////// file_get_context(filename: file, context: stream_context_create([ 'http' => [ 'timeout' => 1.4 // seconds (float) ] ]));
Обсуждают сегодня