CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Delphi >  数据库相关

多线程与数据库问题。

楼主liao2001(知之为知之,不知为不知。。。)2001-09-25 20:02:08 在 Delphi / 数据库相关 提问

    书上说:“每个线程必须在一个单独的BDE会话期中。为此,你需要把一个Tsession  
  元件加到form上,然后。。。。。。同样,如果TQuery元件通过TDatabase连接数据库的话,必须保证每个BDE会话期使用的TDatabase对象是唯一的。。。。。。”  
   
      这是不是就意味着,我不得不为每个数据库连接分别create一个Tsession、一个TQuery、一个TDatabase,即使每次都是连接相同的数据库?  
      还有其他的方法吗?     问题点数:20、回复次数:8Top

1 楼liao2001(知之为知之,不知为不知。。。)回复于 2001-09-25 20:22:31 得分 0

    难道没人写过这样的多线程?不会吧!!!Top

2 楼BlueTrees(蜗牛)回复于 2001-09-25 20:37:03 得分 8

可以不用TSession,没有显式的创建的话,数据集元件会自动的创建,而且不必考虑线程安全的问题,其实一般情况下根本不用考虑,数据集元件都是线程安全的,绝大多数VCL元件也是线程安全的,Delphi不保证这些元件线程安全的原因在于,编程者很可能按照她自己想法使用这些元件,如果你用经典的方法使用的话,不必考虑Top

3 楼liao2001(知之为知之,不知为不知。。。)回复于 2001-09-26 21:32:17 得分 0

    to   BlueTrees(蜗牛):谢谢你的回答!可书上不是这么说的。还有,应该说大多数VCL元件是线程不安全的,因为可视化组件是与用户直接打交道的,一般它们运行在主线程。。。。。。  
  数据集元件就运行在主线程,线程中要用它的话,必须放到主线程中去。。。。。。  
   
      虽然书上也可能说的有错,但我还是希望有更好的回答,希望高手能指点!  
       Top

4 楼liao2001(知之为知之,不知为不知。。。)回复于 2001-09-27 12:47:05 得分 0

    唉~~~~~~~~~Top

5 楼liao2001(知之为知之,不知为不知。。。)回复于 2001-09-27 12:55:37 得分 0

    每人愿意回答吗?还是懂的人太少?Top

6 楼liang_z(千山一刀之忍者神龟)回复于 2001-09-27 13:11:30 得分 2

我也想知道,就如ISQLW中一样的,一个窗口中的数据还没有返回,  
  另一个窗口却还是能做查询。  
  我的MDI子窗口上用了一个StoredProc元件,但是在它没有返回以前  
  主窗口也象死机了一样,什么事也不能做,不知是否有人知道是为什  
  么?我该怎么做?  
  我可以另开贴子加分!Top

7 楼liang_z(千山一刀之忍者神龟)回复于 2001-09-27 13:35:04 得分 2

upTop

8 楼hellion(恶人)回复于 2001-09-27 13:57:49 得分 8

如果不为每个线程创建session的话,即使每个线程单独使用database,是不会并发执行的,所以你必须为每个线程单独创建session,database,query。Top

相关问题

  • 使用ADO与access数据库的多线程问题
  • 请教高手多线程与数据库的问题!
  • 奇怪!请教高手,多线程与ADO访问数据库的问题。
  • 多线程扫描数据库
  • 数据库多线程查询
  • 求数据库多线程的例子?
  • 多线程连数据库的问题
  • 多线程更新数据库问题
  • 多线程中操作数据库
  • 多线程访问数据库

关键词

  • 线程
  • 数据库
  • 安全
  • 数据
  • 连接
  • tdatabase
  • tsession
  • 主线
  • 话
  • 创建

得分解答快速导航

  • 帖主:liao2001
  • BlueTrees
  • liang_z
  • liang_z
  • hellion

相关链接

  • Delphi类图书
  • Delphi类源码下载
  • Delphi控件下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo