社区
C#
帖子详情
异常断线,导致程序崩溃,如何捕捉并控制
LighBlade
2006-09-06 11:01:59
1 问题描述:异常断线,比如网线被碰掉等等,再操作程序时,
如果涉及对数据库的操作,例如connection 的关闭,transaction的commit, rollback等等,
无法操作,因为已经断线,导致运行中程序崩溃,如何捕捉并控制
2 希望达到效果:捕捉并提示,等待网络重新连接,而不是系统崩掉
谢谢大家参与讨论。
...全文
375
10
打赏
收藏
异常断线,导致程序崩溃,如何捕捉并控制
1 问题描述:异常断线,比如网线被碰掉等等,再操作程序时, 如果涉及对数据库的操作,例如connection 的关闭,transaction的commit, rollback等等, 无法操作,因为已经断线,导致运行中程序崩溃,如何捕捉并控制 2 希望达到效果:捕捉并提示,等待网络重新连接,而不是系统崩掉 谢谢大家参与讨论。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Knight94
2006-09-06
打赏
举报
回复
to 如何判断是否断线?其他的还应该注意什么?
DB的Connection有State属性,可以通过它来判断。
Socket有Connected属性来判断。
类似的类型都提供相应的状态。
LighBlade
2006-09-06
打赏
举报
回复
To:cctaiyang(小刀可乐)
数据库: 1秒之间也可能连接断掉,time控件是否适合如题的情况?
To:juge001(宰相)
如何让它等待?清说清楚些
To;Knight94(愚翁)
如何判断是否断线?其他的还应该注意什么?
谢谢大家!
myminimouse
2006-09-06
打赏
举报
回复
mark一下
Knight94
2006-09-06
打赏
举报
回复
对于你所说的,在通过网络进行操作的时候首先要加上try-catch保护,防止出现异常而导致程序崩溃。
其次在使用之前,要先判断当前的connection状态,如果能用才能进行操作,否则进行等待。
juge001
2006-09-06
打赏
举报
回复
同意楼上的说法.如果数据据里捕捉到断线的时候,那就进入等待状态,直到重新连上再进入事务重新开始并提交
kbxj406
2006-09-06
打赏
举报
回复
Mark,值得探讨研究
cctaiyang
2006-09-06
打赏
举报
回复
socket的话用recv函数
对数据库的操作的话可以设置一个timer控件,每过1秒从数据库取当前时间来判断
LighBlade
2006-09-06
打赏
举报
回复
结了
Knight94
2006-09-06
打赏
举报
回复
to 在连接打开之前,如何判断是否可以打开,网络是否连接
即使网络通了,也不一定能连通,所以一般在connection去connect或者open的时候加上try-catch保护就行了。
LighBlade
2006-09-06
打赏
举报
回复
谢谢Knight94(愚翁),你说的情况我知道一些,请问:
在连接打开之前,如何判断是否可以打开,网络是否连接
qt的QTcpSocket在对端关闭后,
程序
就会
崩溃
(段错误).zip
在使用Qt库中的QTcpSocket进行网络编程时,可能会遇到一个棘手的问题:当对端(客户端或服务器)关闭连接后,我们的
程序
可能会遭遇“段错误”并
崩溃
。这个现象通常与内存管理、异步通信机制以及错误处理不当有关。在...
VC++掉线重启例程.rar
在VC++编程中,
程序
员可能会遇到各种
异常
情况,如内存溢出、未捕获的
异常
、资源耗尽等,这些都可能
导致
程序
非正常退出。为了应对这种情况,开发者需要设计一种机制,当
程序
遇到不可预见的问题时,能够自动恢复并重新...
挂机源码监控某个进程当
断线
就自动关机
在这个特定的场景中,“挂机源码监控某个进程当
断线
就自动关机”是指一个编程解决方案,它能够持续检查系统中的某个进程状态,并在检测到该进程
断线
或
异常
时触发系统自动关闭。 首先,我们需要了解挂机源码的基本...
vc6掉线软件唤醒代码.rar
5. **资源管理**:对
程序
中的资源(如内存、文件句柄等)进行有效管理,避免因资源耗尽
导致
的
程序
崩溃
。 6. **自我诊断和修复**:在
程序
设计阶段就考虑其健壮性,添加自检和修复机制,一旦检测到问题,可以自动进行...
Labview8.5掉线重启 NET控件.rar
2. **资源管理**:LabVIEW中的.NET控件可能因消耗过多系统资源(如CPU、内存或网络带宽)而
导致
程序
崩溃
或网络连接断开。 3. **控件
异常
**:特定的.NET控件可能存在bug或者与LabVIEW版本不兼容,
导致
在执行某些网络...
C#
111,098
社区成员
642,554
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章