非常奇怪的.NET问题
我今天遇到一个非常奇怪的问题,自己用C#写了一个程序,其中需要不断的访问Oracle数据库,在本机测试好后,拿到一同事的机器上测试,我是用Oracle提供的ODP.NET访问Oracle的,也不知是不是我使用不当,执行速度不太理想(尤其是插入第一条记录时),同事看到程序暂时无响应了(其实是在插入大量数据),就强行结束任务了。
恶梦从此开始,下一次再执行那个程序时,就提示需要调试了,也没多太出错信息,只给了个进程ID,但那个ID就是当前所执行的程序进程。之后,就一直这样了,重启、把.NET运行库重新安装,怎么做都还是那个样子,更可贵的是那个程序文件删也删不掉了,提示使用中,但进程中却没有,把程序改了改重新编译后拿去执行也是如此。
程序中也没什么可疑的东西,timer,oraclecommand等
太奇怪了,至少我这么感觉,请各位赐教
问题点数:30、回复次数:7Top
1 楼xinbin1122(我喜欢这个奇怪的世界)回复于 2005-01-11 22:26:43 得分 10
呵呵 不明白
你把数据库会滚一下Top
2 楼anggogo(angGoGo)回复于 2005-01-11 23:36:09 得分 0
问这种问题才奇怪
第一,难道你们不会首先用 sql plus 试试你们sql语句速度,就算插入大量数据,用上 transaction 保证一下,也不至于会到无响应的状态
第二,你们可以逐步跟踪程序的执行;如果没有vs.net;难道就不会加多几个try然后定位错误的位置
居然还需要重装.net?
很多时候只是你以为程序没有可疑而已Top
3 楼sarcophile(食肉动物)回复于 2005-01-12 01:21:24 得分 10
建议你先用系统还原,还原到之前一个时间,可能会有惊喜。
否则:用 try 套上就不会需要调试了;试试进安全模式删除程序;检查数据库中的数据是否还完整;可以回滚数据库。Top
4 楼zlopen(MadeInChina)回复于 2005-01-12 09:09:34 得分 0
1、数据库已经关闭了,是删除不了
2、那几条SQL语句很快就能执行完的,速度不一点也不慢
3、我感觉try,catch是最终才使用的,既然是调试,不用吧
4、就这是一条好消息,今天早上能正常删除,找不出问题之所在Top
5 楼zlopen(MadeInChina)回复于 2005-01-12 16:45:40 得分 0
改了一下代码,试着运行DEBUG的编译,还是不行,具体提示如下,望高手指点
xxxx.exe 公共语言运行调试服务
应用程序生成了一个无法处理的异常。
进程ID=xxxxxx,线程ID=xxxxxxxx
单击"确定"终止该应用程序。Top
6 楼mylxiaosl(slpl)回复于 2005-01-12 18:28:16 得分 10
我在高级语言中没遇到过同样的问题,但在汇编语言中遇到过,提供一试。不知老兄的系统是否win2000以上,如是,给一个可能可行的方法,用系统恢复的方法恢复系统(是安装过程中的,不是直接选用恢复项),程序等仍可用。如果数据库不是特重要,建议将日志文件删除。建空日志文件。试完将结果告诉我。这种方法对系统没有影响。Top
7 楼nga96(因为我笨,所以努力。陈勇华)回复于 2005-01-12 19:31:32 得分 0
对呀,微软的毛病就在这里的。
反正动不动就要系统还原的,呵,所以我最喜欢用GHOST了Top




