召隆企博汇论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1924|回复: 0

简单实用socket

[复制链接]

6

主题

1

回帖

67

积分

注册会员

Rank: 2

积分
67
发表于 2019-12-29 00:07:31 | 显示全部楼层 |阅读模式
@socket_set_option($socket, SOL_SOCKET, SO_RCVTIMEO,array("sec"=>10, "usec"=>0));当socket_read得不到响应,这里设置时间可以跳过不会陷入死循环8 G" ]$ t$ q: D8 E  R8 e
现在socket读写数据的流程是这样的:
7 Z% U+ L: q6 m  g
1 Q, A( q+ ~4 K( }/ s7 H$ i$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);$ F( S# @1 l; c* j/ Q7 _

3 v2 O  F) \5 X. F; X: t. k9 Usocket_set_option($socket,SOL_SOCKET,SO_RCVTIMEO,array("sec"=>60, "usec"=>0 ) );" |; N6 q6 V# W6 K: z6 e2 D
3 K8 y; D8 k' B- a( J, v
socket_connect($socket, IP, PORT);0 w( R8 I6 `; Z( ?" \/ e

) `5 n4 j1 d. I9 b2 }socket_write($socket, $strxml, strlen($strxml);+ N4 R: d3 i3 u$ r4 f% S7 J' @4 P
$back = socket_read($socket, 8192);
# w( |2 D+ j5 _) ?6 l6 X! d! \4 j3 C& J1 x8 ~& o
socket_read有时候收不到返回数据,应该是超时了,如何修改超时时间?
: _0 J/ v5 X& }& @/ Fsocket_set_option($socket, SOL_SOCKET, SO_RCVTIMEO,array("sec"=>3, "usec"=>0));//接受超时
& x7 V8 S# ^& L0 \3 Msocket_set_option($socket, SOL_SOCKET, SO_SNDTIMEO,array("sec"=>2, "usec"=>0));//发送超时! I( j5 L' R; f) R

% [8 I8 M+ Y. J5 L! mhttps://blog.csdn.net/sn_qmzm521/article/details/80756396
( |, ]7 e" b  l9 U( |* Q% v6 S) khttps://blog.csdn.net/Hiking_Tsang/article/details/84788448
# |4 w7 U4 O2 a" |
. F' q& p; V7 P/ \: C5 i
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|召隆企博汇 ( 粤ICP备14061395号 )

GMT+8, 2026-9-5 19:30 , Processed in 0.035070 second(s), 26 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表