召隆企博汇论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1769|回复: 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得不到响应,这里设置时间可以跳过不会陷入死循环) `+ \- i1 k% f) {; H6 ^4 v& d- W
现在socket读写数据的流程是这样的:" h5 w& v+ n: Z1 x

  ]( x9 H, k  \) U; c  C$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
; b* H0 G8 X' V/ N7 @1 g
' U9 y7 n5 l# M% R, ?socket_set_option($socket,SOL_SOCKET,SO_RCVTIMEO,array("sec"=>60, "usec"=>0 ) );
3 E' C1 a' b' u0 ^2 I8 C" F2 d: T. f# `9 [1 @$ ?
socket_connect($socket, IP, PORT);
" N, i; }) g# q( m8 S4 X) @# ]! i8 ?( Y3 x2 _
socket_write($socket, $strxml, strlen($strxml);
$ b' T7 [7 S# D$back = socket_read($socket, 8192);
" u3 e1 l  y- g) T8 G/ K
9 r7 K; Q" l! {' i' osocket_read有时候收不到返回数据,应该是超时了,如何修改超时时间?3 e" B# p8 o& Z+ ^% v* V! t
socket_set_option($socket, SOL_SOCKET, SO_RCVTIMEO,array("sec"=>3, "usec"=>0));//接受超时
8 H: `. p* T# wsocket_set_option($socket, SOL_SOCKET, SO_SNDTIMEO,array("sec"=>2, "usec"=>0));//发送超时1 l* q# d) G. G$ B

0 L- {: k+ `6 Y' r8 H8 v/ }7 hhttps://blog.csdn.net/sn_qmzm521/article/details/80756396
0 X0 V- F0 A4 T' ghttps://blog.csdn.net/Hiking_Tsang/article/details/84788448
" X- A# I" D% M# J6 y& j1 b( ]' n  @7 B% |
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-7-9 23:58 , Processed in 0.036567 second(s), 25 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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