Insufficient memory for this operation


Insufficient memory for this operation
'Insufficient memory for this operation' errorQuestion:
Whenever I attempt to open many query or table cursors, I finally reach a point when I get an error, "Insufficient memory for this operation". What do I do?
Answer:
First, you should read the technical document at www.borland.com/devsupport/bde/ti_list/TI2751.html
Some current internal limits of BDE. This document will tell you what most of absolute BDE limits are.
IMPORTANT: If your application is not reaching one of the limits covered there and you are also getting the above error message, most likely the SHAREDMEMSIZE setting in the BDE will solve your problem. This setting will allow you to increase the BDE's internal object memory pool. A setting between 4096 and 8192 should be more than plenty.

修改BDE配置增加中間層程序響應客戶端程序個數的方法

    用友安易R9網絡版軟件在使用中,若發現某些工作站不能進入系統,提示‘無法連接中間層...’,則有可能是因為服務器因中間層連接數多造成系統資源不足導致的。
       判斷方法:工作站調用服務器中間層情況下,某些工作站發生連接不上中間層,且不固定,有時是這台,有時是那一台。
       解決方法:
       在服務器上,打開windows【控制面板】-【BDE  Administrator】-【Configuration】-【System】-【INIT】,修改倒數第4項【SHAREDMEMSIZE】為默認值2048的整倍數,如4096、8192,但不能過大。最后點擊‘Object’菜單下的‘Apply’保存設置。
       若數據庫為MS  SQL  Server,則還可以調節BDE設置中【TDS  PACKET  SIZE】來解決。在服務器上,打開windows【控制面板】-【BDE  Administrator】-【Configuration】-【Drivers】-【Native】-【MSSQL】,修改倒數第2項【TDS  PACKET  SIZE】為默認值4096的整倍數,如8192、12288,但不能過大。最后點擊‘Object’菜單下的‘Apply’保存設置


修改BDE配置增加中間層程序響應客戶端程序個數的方法(二)

             關於中間層能帶多少個客戶端的問題,回來后我們一直在尋求解決辦法。經多次償試和配置,目前我們自己測試初步可以達到:  客戶端數*模塊數>100
      
                 配置方法如下:

                 啟動BDEADMIN.EXE,在Configuation頁設置:
                 1)  system\init\sharedmemsize  =  2048(設為更大,我們設置為2048*8=16384)
                 2)  drivers\native\mssql\max  dbprocesses  =  31(設為更大,我們設置為254)在前台程序不能連接中間層時配置BDE的方法

打開windows控制面板-【BDE Administrator】,左邊功能樹選‘Databases’,點左上角‘Object’菜單,選‘New’,選‘MSSQL’,點‘OK’,將自動添加名稱‘MSSQL1’,在右側參數列表中修改倒數第一項‘USER NAME’為‘sa’,修改倒數第五項‘SERVER NAME’為數據庫服務器的機器名,然后點左上角‘Object’菜單,選‘Apply’,在提示窗口中點‘OK’。鼠標雙擊名稱‘MSSQL1’,在出現的‘Database Login’窗口,如果數據庫設置了密碼,則在‘Password’欄輸入,然后點‘OK’。若名稱‘MSSQL1’前的圖標被一淺綠色框住,則表示配置通過。

調整BDE參數提高R9中間層最大連結數。

建議調整 BDE Administrator\Configuration\System\INIT項目下的MEMSIZE和SHAREMEMSIZE兩個參數:

參數方案                               一                        二                        三
MEMSIZE
16
64
205
SHAREMEMSIZE

2048

8192

32768
估算連接數
20
60
200

***注意***:如果選擇方案三,則一台機器上只能啟動一個需要BDE的程序。例如,如果啟動了R9中間層,則其他需要BDE才能運行的應用程序可能會啟動失敗,反之亦然。

如果使用的是 SQL Server 數據庫,還需要把
BDE Administrator\Configuration\Drivers\Native\MSSQL 項目下的 MAX DBPROCESS 參數值調整為對應的連接數以上


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM