• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >vc/mfc > 难!难!数据库中断问题

难!难!数据库中断问题

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-06-04

佚名通过本文主要向大家介绍了数据库测试问题,解决数据库乱码问题,数据库乱码问题,数据库面试问题,oracle数据库乱码问题等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 难!难!数据库中断问题
描述:

我的问题描述如下:
我的程序使用了2个线程,主线程使用辅线程的数据进行计算。具体代码如下:
辅线程的RUN函数:
int CAssistanceThread::Run() 
{
// TODO: Add your specialized code here and/or call the base class
while(true)
{
//等待定时器的事件
WaitForSingleObject(m_hevtTimer,INFINITE);
                  //等待关闭线程事件
if(WaitForSingleObject(m_hevtClosed,0)==WAIT_OBJECT_0)
break;
//等待主线程请求事件
WaitForSingleObject(m_hevtRequest,INFINITE);
ResetEvent(m_hevtRequest);
    
//数据库状态标志
if(m_bDatabaseStatus)
{
//如果读取失败,设置数据库状态
if(!m_pDas->Select())
m_bDatabaseStatus=false;
}
//发送信息通知主线程可以使用数据
PostMessage(m_hWnd,WM_HANDLEDATA,0,0);
}
//设置关闭应答事件
SetEvent(m_hevtClosedAnswer);
return 0;
}
主线程:
文档类
//处理数据
void CEvaluationSystemDoc::HandleData()
{
         //验证数据库状态
if(!CheckServerStatus())
{
                  //设置请求事件
SetEvent(m_pAssistThread->m_hevtRequest);
return;
}
GetSystemTime(&m_BeginTime);
}
bool CEvaluationSystemDoc::CheckServerStatus()
{
bool bReturn=true;
//辅线程数据库状态
if(!m_pAssistThread->m_bDatabaseStatus)
{
bReturn=false;
                  //连接数据库
if(m_DatabaseDialog.ConnectDasServer())
{
m_Das.SetupSession(m_DatabaseDialog.m_DasDataSource);
bDasServerStatus=true;
m_pAssistThread->m_bDatabaseStatus=true;
}
}
return bReturn;
}
视图类:
LRESULT CEvaluationSystemView::OnHandleData(WPARAM wParam,LPARAM lParam)
{
CEvaluationSystemDoc* pDocument=GetDocument();
pDocument->HandleData();
return 0;
}
我使用OLE DB 访问数据库,完成目的:数据库中断,程序仍正常运行。
经测试:发现,如果网络中断,程序正常,但是,如果网络没有中断,只是丢包严重,程序处于死机状态,请求各位高手,这是为什么?希望提供解决方案


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 帮我解决一下这个链接数据库问题
  • 连接数据库输出的接收问题
  • 关于数据库表的问题
  • 关于测试数据库连接的问题。
  • 难!难!数据库中断问题

相关文章

  • 2017-06-05 多线程与忙循环的选择
  • 2017-06-04 精通installshield70的兄弟帮个忙
  • 2017-06-05 高手进来看看
  • 2017-06-04 一个关于Netmeeting开发的问题,请教各位大虾,100分大奉献
  • 2017-06-04 如何控制BHO只被IE加载而不被文件浏览器加载?
  • 2017-06-04 急!mfc小问题
  • 2017-06-04 谁能介绍些ActiveX控件扩展的例子
  • 2017-06-04 MFC中edit控件的焦点问题
  • 2017-06-05 COM组件如何传递数组作为参数
  • 2017-06-04 怎么把通用对话框CFileDialog与ActiveX控件不是Windows通用控件哦贴到一起

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • c#中的Dictionary对应vc的什么类型
    • 98下遍历进程,得到的进程PID都是负值,这对吗?
    • 请教,在扩展DLL中执行长操作时,如何交出控制权给调用它的进程?
    • VC怎么调用word查找特定字符后面的字符
    • 怎样在ATL中使用画笔没分了
    • 请教高手,我做了一个ATL组件,在多个ASP页面中需要调用其接口函数。
    • 不显示删除回复显示所有回复显示星级回复显示得分回复求助。关于MAPI的问题,非常之无助,望得到帮助。
    • 我看到有的系统服务程序,没有结束,手机和禁用,不知道怎么弄的?
    • ActiveXcontroltestcontainer的生成问题
    • 我想在IE中嵌入ACTIVE的控件,这个控件是一些图形象丙图,条形图,波形图怎么做

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有