很弱的问题,关于阻塞服务器与非阻塞客户端。 非阻塞模式的TCP客户端是否有办法和阻塞模式的TCP服务器通讯?我自己试了试,好像不行。不知道是不是真的不行还是我不知道方法。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 zwjchina(蒲石) 例如我用indy的TIdTCPServer做服务器, 用Internet里的TCPClient做客户端,同时把TCPClient的BlockMode改成bmNonBlocking,那么客户端和服务器无法通讯。(客户端连接时,服务器发现有连接,但是客户端显示连接失败)。 如果把TCPClient的BlockMode改成bmBlocking,那么通讯就没有问题了。另 china618(知秋半叶) 关于阻塞和非阻塞,这个论坛里面有很多相关的讨论。可以搜索一下。 Indy我不清楚,但是非阻塞的概念在Windows下才有,也就使用Windows在socket api中封装了如Send这种标准的阻塞方式所对应的异步方式,Linux下都是直接使用那些标准的阻塞过程,因此Linux系统的TCP服务器(如标准的Http服务器)是不会区分连接其服务器的系统(如果是Windows)是使用阻塞还是非阻塞方式。 的确是我的问题,事实上如zwjchina(蒲石) 所说,阻塞的服务器完全可以和非阻塞的客户端通讯。结贴,给分,谢谢。 求救delphi Dll delphi中使用XMLDocument读取大XML文件速度非常慢,求解决方案 一个奇怪的问题,大家帮我看一看,??? 如何判断输入的是中文还是英文?? 如何设置导出到Excel的数据的数据类型?? 急!!!! ChinaOk请进来,有问题想请教 TClientDataSet的索引更新的问题 如何用Delphi截获IP数据包?? 我有个小程序,我出钱,谁有兴趣做下? 关于语音聊天程序请教(请各为大虾帮帮忙,关系到饭碗问题) 寝室用电要收费,想请帮忙编个软件!!! 哪位大哥给个GMAIL啊
例如我用indy的TIdTCPServer做服务器,
用Internet里的TCPClient做客户端,同时把TCPClient的BlockMode改成bmNonBlocking,那么客户端和服务器无法通讯。(客户端连接时,服务器发现有连接,但是客户端显示连接失败)。
如果把TCPClient的BlockMode改成bmBlocking,那么通讯就没有问题了。另 china618(知秋半叶) 关于阻塞和非阻塞,这个论坛里面有很多相关的讨论。可以搜索一下。
Send这种标准的阻塞方式所对应的异步方式,Linux下都是直接使用那些标准的阻塞过程,因此
Linux系统的TCP服务器(如标准的Http服务器)是不会区分连接其服务器的系统(如果是Windows)是使用阻塞还是非阻塞方式。
结贴,给分,谢谢。