C# &引用;“内存不足”;数据传输错误

C# &引用;“内存不足”;数据传输错误,c#,out-of-memory,sybase-asa,C#,Out Of Memory,Sybase Asa,我编写了一个应用程序来传输从Sybase Ase数据库读取的记录,并编写了一个新创建的本地Sybase Asa数据库。有近110.000条记录需要传输 在我的本地计算机上,应用程序成功运行(Windows7-32bit-3GB ram),但在开发服务器(WindowsServer2008-64bit-8GB ram)上,当我的 记录计数约为40.000,“工作集-专用”约为1.800.000kb(2,8gb) gc总内存增量稳定 这里是我的日志流 详细工作集-专用:507948K,GC G

我编写了一个应用程序来传输从Sybase Ase数据库读取的记录,并编写了一个新创建的本地Sybase Asa数据库。有近110.000条记录需要传输

在我的本地计算机上,应用程序成功运行(Windows7-32bit-3GB ram),但在开发服务器(WindowsServer2008-64bit-8GB ram)上,当我的

  • 记录计数约为40.000,“工作集-专用”约为1.800.000kb(2,8gb)
  • gc总内存增量稳定
这里是我的日志流

  • 详细工作集-专用:507948K,GC GetTotalMemory:49229720
  • 详细工作集-专用:918620K,GC GetTotalMemory:51377000
  • 详细工作集-专用:1328568K,GC GetTotalMemory:52245316
  • 详细工作集-专用:1739128K,GC GetTotalMemory:52978364
  • 详细工作集-专用:1813940K,GC GetTotalMemory:51567670
  • 内存不足-
以及用于创建本地sybase asa数据库的批处理文件

set dbToolsPath=%1
set dbDirectory=%2
set scriptsDirectory=%3
set dbNameWOExtension=%4

REM Add trailing back slashes if necessary
IF NOT %dbToolsPath:~-1%==\ SET dbToolsPath=%dbToolsPath%\
IF NOT %dbDirectory:~-1%==\ SET dbDirectory=%dbDirectory%\
IF NOT %scriptsDirectory:~-1%==\ SET scriptsDirectory=%scriptsDirectory%\

set mfgDBFilePath=%dbDirectory%%dbNameWOExtension%.db
set mfgDBLogFilePath=%dbDirectory%%dbNameWOExtension%.log
REM Following four lines can be moved to code
attrib -R       %mfgDBFilePath%
del             %mfgDBFilePath%
attrib -R       %mfgDBLogFilePath%
del         %mfgDBLogFilePath%

REM TODO: Add explanation about the switches
cd /d %scriptsDirectory%
**%dbToolsPath%dbinit.exe -n -p 4096 -z 1252LATIN1 %mfgDBFilePath%
%dbToolsPath%dbspawn.exe -p dbeng10 -n WfDBServer %mfgDBFilePath%
%dbToolsPath%dbisql.exe -c "eng=WfDBServer;dbn=%dbNameWOExtension%;uid=dba;pwd=sql" -nogui PE_WfDB_MFG.sql
%dbToolsPath%dbstop.exe -c "eng=WfDBServer;uid=dba;pwd=pluto" -y**

这些都是获得的知识,但我不明白为什么会因为这个错误而中止传输。我的机器上一切正常,服务器上有什么不同?我必须去哪里寻找问题?还有我必须如何评论private的增加?

最可能的问题是由于项目配置中的错误平台(我猜是x86)。您可以选择AnyCPU或x64作为平台并重建应用程序。请参阅标记的答案