我的应用程序将文件上传到我的客户端的服务器,但他想要特殊的“暂停上传”功能。我不能简单地关闭连接,甚至没有杀死进程 - 他需要失去连接,否则他的服务器应用程序删除未完成的文件 - 所以我必须在代码中模拟“拔下电缆” - 你有什么建议吗? 感谢您的帮助,我的英语水平:) 尔卡对不起如何模拟套接字断开?
3
A
回答
2
您可以使用Mockito创建Socket
模拟的单元测试,在这个问题上的建议:Testing Java Sockets
0
如果你写的客户端和服务器,或许更好的选择是发送一些OOB data告诉服务器你正在暂停(或者一条消息告诉服务器不要在下一个套接字关闭时删除该文件)。通常情况下最好是明确的,而不是依靠某些行为的副作用 - 在你的情况下,关闭套接字而没有明确的connection termination。
相关问题
- 1. 模拟套接字断开连接
- 2. 如何模拟java套接字连接中断?
- 3. 如何检测套接字断开?
- 4. 在Android中,如何断开套接字?
- 5. 套接字java断开
- 6. 检测套接字断开?
- 7. 套接字断开行为
- 8. 如何使用RAII模拟套接字
- 9. 如何判断套接字何时断开
- 10. 如何在Android模拟器中模拟多个套接字
- 11. 如何通过模拟库模拟套接字对象
- 12. 模拟套接字错误
- 13. 检测套接字断开连接
- 14. Python:如何突然断开套接字而没有正确关闭套接字
- 15. 您如何知道套接字客户端断开连接?
- 16. 如何检测C中的套接字断开连接#
- 17. 如何模拟苹果手表与手机的断开连接
- 18. 当升压TCP套接字断开
- 19. 检测意外的套接字断开
- 20. 检测套接字断开使用select()
- 21. 在AS3中自动断开套接字
- 22. 第一次断开套接字
- 23. 如何模拟套接字连接丢失?
- 24. C#:套接字问题 - 几秒钟后连接的套接字断开连接
- 25. 如何模拟客户端和服务器之间的套接字断开(在Windows上)?
- 26. 如何从TCP套接字在断开的NodeJS
- 27. 如何检测客户端的套接字断开?
- 28. Boost :: asio套接字 - 如何彻底断开它们?
- 29. 如何在Ruby中检测断开的Unix域套接字?
你必须停止发送数据并停止发送到达数据的确认(我认为这对于Java的套接字实现是不可能的,因为这是由OS完成的),然后等待足够长的时间,以便服务器端的一些超时触发。 –
使用防火墙设置(iptables或windows防火墙),或者拔掉电缆,关闭无线路由器或发送RST信号。你可以很容易地在Windows上使用TCPView。 – bestsss
@PaŭloEbermann,由于超时时间足够长(如2小时)和/或启用KEEP_ALIVE,所以无法工作。 – bestsss