[python&php 网络编程]设定并获取socket超时时间

原创 2015年11月20日 14:53:27

1.python写法

import socket

def test_socket_timeout():
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    print "Default socket timeout: %s" %s.gettimeout()
    s.settimeout(100)
    print "Current socket timeout: %s" %s.gettimeout()
    
if __name__ == '__main__':
    #针对单个socket实例的超时
    test_socket_timeout()

2.php写法

<?php
function test_socket_timeout(){
    $socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
    $res = socket_get_option($socket, SOL_SOCKET, SO_RCVTIMEO);
    printf("Default socket timeout: %s\n", $res['sec']);

    $timeout = array('sec'=>100,'usec'=>0);
    socket_set_option($socket,SOL_SOCKET,SO_RCVTIMEO,$timeout);
    $res = socket_get_option($socket,SOL_SOCKET,SO_RCVTIMEO);
    printf("Default socket timeout: %s\n", $res['sec']);
}

test_socket_timeout();

php的代码量还是会比较多点,python直接import socket库就行了,php要使用socket必须安装并开启socket扩展

socket的超时时间有发送超时和接受超时 两个默认是60秒 在php.ini里面可以设置 但这里我们主要针对单个socket实例
php 设置和获取socket参数主要使用socket_set_option和socket_get_option两个函数
http://php.net/manual/zh/function.socket-set-option.php
http://php.net/manual/zh/function.socket-get-option.php


转载请标注原文地址:http://blog.csdn.net/ddjohn/article/details/49946671

版权声明:本文为博主原创文章,未经博主允许不得转载。

php socket 超时设置

$socket = socket_create(AF_INET,SOCK_STREAM,SOL_TCP); socket_set_option($socket,SOL_SOCKET,SO_RCVTI...

PHP中default_socket_timeout配置…

最近最近在学习些PoC,发现大部分PoC都会有这样一句ini_set('default_socket_timeout', 5) ,意思就是设置default_socket_timeout这个配置参数为...

python中关于socket的timeout设置的问题

今天发使用urllib2请求http时, 发现超时时间与设置的不一致。 例如下面的代码httpreq.request('http://www.baidu.com', timeout=1),将80端口使...

python TCPServer, StreamRequestHandler设置超时时间timeout

先来大概说一下,网络编程中总是分不开服务器和客户端,所谓的超时也分两种情况,一种是服务器等待客户端连接超时,一种是服务器处理客户端请求超时(可以理解为sever和handle),这两种情况要分别对待。...

Python实例浅谈之七socket编程

一、简介        QWidget提供了处理窗口部件的几何布局的函数,分两类:(1)包含窗口边框的处理函数,包括x(), y(), frameGeometry(), pos()和move()。(...

PHP SOCKET编程

1. 预备知识        一直以来很少看到有多少人使用php的socket模块来做一些事情,大概大家都把它定位在脚本语言的范畴内吧,但是其实php的socket模块可以做很多事情,包括做ftp...
  • hguisu
  • hguisu
  • 2012年04月11日 10:55
  • 73477

使用python设置超时

Python code @TraceFunc def WorkInTime(Func, Timeout = 0, *args): ''' If function cann't f...

文章标题

介绍ViewStub 是一个轻量级的View,没有尺寸,不绘制任何东西,因此绘制或者移除时更省时。(ViewStub不可见,大小为0)优点实现View的延迟加载,避免资源的浪费,减少渲染时间,在需要的...

Linux内存管理

转载地址: http://www.cnblogs.com/wuchanming/p/4360264.html 转载:http://www.kerneltravel.net/journal...

[python&php 网络编程]socket缓冲区大小设置

1.python import socket SEND_BUF_SIZE = 4096 RECV_BUF_SIZE = 4096 def modify_buff_size(): sock ...
  • ddjohn
  • ddjohn
  • 2015年11月23日 12:00
  • 3060
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:[python&php 网络编程]设定并获取socket超时时间
举报原因:
原因补充:

(最多只允许输入30个字)