社区
Apache
帖子详情
为什么客户端连接已经断开,但服务器端代码任在执行
xie_jian_jun
2009-06-25 03:29:03
为什么客户端连接已经断开,但服务器端代码任在执行
服务器端使用Apache+PHP5
我写了一PHP测试网页,里面有一死循环,在循环中不断的更新某个文件的内容,设置为永远不超时,客户端访问该网页,然后关闭了客户端,但我发现那个死循环还在执行,并且内存也增加了很了.请各位帮帮我.难道连接已经断开,服务器端的执行线程不会终止吗?
...全文
197
4
打赏
收藏
为什么客户端连接已经断开,但服务器端代码任在执行
为什么客户端连接已经断开,但服务器端代码任在执行 服务器端使用Apache+PHP5 我写了一PHP测试网页,里面有一死循环,在循环中不断的更新某个文件的内容,设置为永远不超时,客户端访问该网页,然后关闭了客户端,但我发现那个死循环还在执行,并且内存也增加了很了.请各位帮帮我.难道连接已经断开,服务器端的执行线程不会终止吗?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
jaaz
2010-04-02
打赏
举报
回复
因为你的程序是在服务器端执行的,客户端发送请求,服务器端接受到后就会执行,这个时候与和客户端连不连接没关系了
mrshelly
2009-07-08
打赏
举报
回复
是的,你的疑问给你肯定的回答...
有这种研究心态,说明不错.
仔细看看HTTP协议方面的东西,你会从里面找到解释的...
逸学堂
2009-06-25
打赏
举报
回复
客户端断开的只是连接服务器的连接,就是socket连接。而这个断开是不会,杀掉服务器上正在运行的进程。
所以,客户端断开,和服务器的运行没有任何关系。
xie_jian_jun
2009-06-25
打赏
举报
回复
请知道怎么回事的达人给点意见,先谢谢了.
公链开发与智能合约开发
根据区块链网络中心化程度的不同,分化出3种不同应用场景下的区块链:(1)全网公开,无用户授权机制的区块链,称为公有链;(2)允许授权的节点加入网络,可根据权限查看信息,往往被用于机构间的区块链,称为联盟链或行业链;(3)所有网络中的节点都掌握在一家机构手中,称为私有链。联盟链和私有链也统称为许可链,公有链称为非许可链。 公有区块链系统 公有链中,任何节点无须任何许可便可随时加入或脱离网络。从最早的比特币系统人手介绍公有链系统的发展现状。 点对点电子现金系统:比特币与传统分布式系统的C/S , B/S或三层架构不同,比特币系统基于P2P网络,所有节点对等,且都运行同样的节点程序。节点程序总体上分为两部分:一部分是前台程序,包括钱包或图形化界面;另一部分是后台程序,包括挖矿、区块链管理、脚本引擎及网络管理等。区块链管理:涉及初始区块链下载、
连接
区块、
断开
区块、校验区块和保存区块,以及发现最长链条的顶区块。内存池管理:即交易池管理。节点将通过验证的交易放在一个交易池中,并准备好将其放入下一步挖到的区块中。邻接点管理:当一个新比特币节点初始启动时,它需要发现网络中的其他节点,并与至少一个节点
连接
。共识管理:比特币中的共识管理包括挖矿、区块验证和交易验证规则。比特币采用PoW共识机制,依赖机器进行哈希运算来获取记账权,同时每次达成共识需要全网共同参与运算,允许全网50%节点出错。密码模块:比特币采用RIMEMD和SHA-256算法及Base-58编码生成比特币地址。签名模块:比特币采用椭圆曲线secp256k1及数字签名算法ECDSA来实现数字签名并生成公钥。脚本引擎:比特币的脚本语言是一种基于堆栈的编程脚本,共有256个指令,是非图灵完备的运算平台,没有能力计算任意带复杂功能的任务。本课程从零到一带领你实践一个小型公链。 智能合约,Smart Contract,是一种旨在以信息化方式传播、验证或
执行
合同的计算机协议。 区块链领域的智能合约有以下特点:规则公开透明,合约内的规则以及数据对外部可见;所有交易公开可见,不会存在任何虚假或者隐藏的交易。 所以我们常说区块链技术具有“公开透明”“不可篡改”的特点,这些其实都是智能合约赋予区块链的。 程序员的世界里一致有个认知:相较于程序和机器,人更加不可控。人会作恶,但是
代码
并不会主观主动作恶。 而传统的契约行为,都是由人来制定规则,由人去
执行
。当然,遇到边界问题或者异常,也是由人去做界定。 但有了智能合约之后,这些就变得不一样了。 开发者通过智能合约去制定一套规则,然后发布到线上,人与智能合约进行交互,由机器去完成业务的部分,这样就规避了由人来做
执行
时可能造成的作弊行为。 静态类型的编程语言——Solidity,是以太坊的智能合约实现的编程语言,运行在以太坊的虚拟机 Ethereum Virtual Machine(EVM)上。 借由 Solidity,开发人员能够编写出可自我
执行
的应用程序,该程式可被视为一份具权威性且永不可悔改的交易合约,对已具备程式编辑能力的人而言,编写 Solidity 的难易度就如同编写一般的编程语言。 关于智能合约的应用,大名鼎鼎的 ICO 就是其中之一。除了 ICO 之外,与物联网结合赋能智能家居、投票等等,都是智能合约的应用场景。换言之,能够用机器去实现既定的规则、提高效率,且能够规避人类的作弊行为的场景,基本都是智能合约的应用场景。
Linux中tcp服务器检测
客户端
断开
连接
的方法
现在是在一个树莓派上
执行
编写好的tcp服务器的程序,一旦有
客户端
连接
上来,服务器就会不断的向
客户端
发送类似于心跳包的数据。现在的需求是,当
客户端
软件关闭,服务器不需要从新启动服务器上的tcp进程。 涉及到的主要是
客户端
断开
连接
后,
服务器端
继续send时,进程会退出,这是会涉及到信号SIGPIPE的知识,以及使用send中的最后参数或者sigaction的方法,避免进程被杀死。 根据...
C# Socket通信从入门到精通(21)——Tcp
客户端
判断与服务器
断开
连接
的三种方法以及C#
代码
实现
我们开发的tcp
客户端
程序在
连接
服务器以后,经常会遇到服务器
已经
关闭但是作为
客户端
的我们不知道,这时候应该应该有一个机制我们可以实时监测
客户端
和服务器
已经
断开
连接
,如果
已经
断开
了
连接
,我们应该及时报警提示用户
客户端
和服务器
已经
断开
连接
,本文介绍三种可以监测
客户端
已经
与服务器
断开
连接
的方法,并介绍三种方法分别适用于哪种业务场景。
Socket 编程经验谈---如何处理socket
连接
后
服务器端
或
客户端
的
断开
现象:
服务器端
等待客户断
连接
,当socket
连接
建立后,如果
客户端
异常
断开
,服务器会抛出异常,从而导致程序运行中断 目标:希望服务器一直等待
连接
,
客户端
中断后程序不退出,而
客户端
重新恢复后可以继续保持
连接
代码
: public class Receive { public static byte[] buffer= new byte[1024]; public static Man
TCP通信中服务器处理
客户端
意外
断开
如果TCP
连接
被对方正常关闭,也就是说,对方是正确地调用了closesocket(s)或者shutdown(s)的话,那么上面的Recv或Send调用就能马上返回,并且报错。这是由于close socket(s)或者shutdown(s)有个正常的关闭过程,会告诉对方“TCP
连接
已经
关闭,你不需要再发送或者接受消息了”。 但是,如果意外
断开
,
客户端
(3g的移动设备)并没有正常关闭socket。双方并未按照协议上的四次挥手去
断开
连接
。 那么这时候正在
执行
Recv或Send操作的一方就会因为没有任何
连接
中断的通
Apache
24,923
社区成员
16,548
社区内容
发帖
与我相关
我的任务
Apache
Web 开发 Apache
复制链接
扫一扫
分享
社区描述
Web 开发 Apache
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章