请选择 进入手机版 | 继续访问电脑版

召隆企博汇论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1808|回复: 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 n- z7 P6 D6 g5 g9 u: L0 G; [现在socket读写数据的流程是这样的:
4 p1 y/ }& N5 N9 Z2 K. F' ^& F6 }; A
- E5 ~9 N. V- h. O9 m- u1 }7 y* p$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
9 \4 k$ y, V5 G3 U, a+ r1 M# g$ l$ U' T; Y: o
socket_set_option($socket,SOL_SOCKET,SO_RCVTIMEO,array("sec"=>60, "usec"=>0 ) );: b, r$ l* h; x' w& l$ V' ~2 `! ~
$ U: T  J( P! G, d
socket_connect($socket, IP, PORT);
, f2 ?* `0 _8 j( {/ c! R9 t: x$ u6 {5 U7 B9 u
socket_write($socket, $strxml, strlen($strxml);$ Y. o. }6 |- B7 Z& N3 L: l. j
$back = socket_read($socket, 8192);* b* v+ N" D& [- B4 F+ N" O
6 [0 m$ L& A  o2 v, d
socket_read有时候收不到返回数据,应该是超时了,如何修改超时时间?
2 c+ G( \2 V9 e+ R5 {! d. e  L& O2 zsocket_set_option($socket, SOL_SOCKET, SO_RCVTIMEO,array("sec"=>3, "usec"=>0));//接受超时
/ K! U, @- }) C0 N6 esocket_set_option($socket, SOL_SOCKET, SO_SNDTIMEO,array("sec"=>2, "usec"=>0));//发送超时
6 y6 @! Z. u% \1 D/ t# l. m: t( G2 x$ P5 J  N2 v* N# n) S
https://blog.csdn.net/sn_qmzm521/article/details/80756396
$ Y/ F4 L* d' U2 P+ m$ T+ e% Fhttps://blog.csdn.net/Hiking_Tsang/article/details/847884487 }: X7 G* a( B4 Q% m$ A% G
/ j: Y' r  P6 r5 \& G$ L7 e4 S
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-8-12 20:33 , Processed in 0.032018 second(s), 25 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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