zoukankan      html  css  js  c++  java
  • TSession的多线程编程

    最近写了一个多线程进行数据库链接的程序的时候,发现一个错误:"File or directory does not exist. File: PDOXUSRS.NET"。追究其原由,发现是TSession的问题。大家都知道要用BDE进行多数据库编程,必须为各个TDatabase设置不同的TSession,其中重要的设置有SessionName、NetFileDir、PrivateDir,必须保持不能重复。NetFileDir设置一个目录用来存放BDE网络控制文件PDOXUSRS.NET.(Specifies the directory that contains the Borland Database Engine (BDE) network control file, PDOXUSRS.NET.)PrivateDir设置一个目录用来存储BDE的临时数据表(Specifies the directory in which to store temporary table processing files generated by the Borland Database Engine (BDE) for database components associated with a session.)。发生:"File or directory does not exist. File: PDOXUSRS.NET"错误,是因为不同程序注册了相同的SessionName,而NetFileDir、PrivateDir又是不同目录,结果PDOXUSRS.NET就没有产生在相应目录下,造成找不到PDOXUSRS.NET。

         由于Borland没有公布BDE.PAS代码,所以只能猜测BDE其实是根据SessionName在电脑里面注册了一个Tsession,所有程序都可以用。但这里注意,一定要设置对相应的NetFileDir、PrivateDir目录。其实NetFileDir、PrivateDir设置很重要,需要给创建、修改、删除权限,否则还会有其他问题。比如程序没有正常退出,该目录被占用,就会提示“Directory is busy.”

  • 相关阅读:
    QQ视频直播架构及原理 流畅与低延迟之间做平衡 音画如何做同步?
    边缘推流与中心推流对比
    推流协议 支持RTMP协议推流
    改变原型
    window.onbeforeunload 埋点 页面停留时间
    修改/etc/hosts 云服务器 没有做外网转内网的优化
    :nohlsearch
    z waiting to receive.**B0100000023be50
    Powered by Flink
    负载均衡
  • 原文地址:https://www.cnblogs.com/enli/p/1352597.html
Copyright © 2011-2022 走看看