社区
C#
帖子详情
异常断线,导致程序崩溃,如何捕捉并控制
LighBlade
2006-09-06 11:01:59
1 问题描述:异常断线,比如网线被碰掉等等,再操作程序时,
如果涉及对数据库的操作,例如connection 的关闭,transaction的commit, rollback等等,
无法操作,因为已经断线,导致运行中程序崩溃,如何捕捉并控制
2 希望达到效果:捕捉并提示,等待网络重新连接,而不是系统崩掉
谢谢大家参与讨论。
...全文
373
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在对端关闭后,
程序
就会
崩溃
(段错误).zip qt的QTcpSocket在结束进程后,tcp的对端
程序
就会
崩溃
(段错误),其原因是...
VC++掉线重启例程.rar
VC++掉线重启例程
挂机源码监控某个进程当
断线
就自动关机
挂机源码监控某个进程当
断线
就自动关机
vc6掉线软件唤醒代码.rar
vc6掉线软件唤醒代码
Labview8.5掉线重启 NET控件.rar
Labview8.5掉线重启 NET控件
C#
111,098
社区成员
642,554
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章