OutOfMemoryException 逼疯你的封神之路

您所在的位置:网站首页 错误0x8007000e存储不足 OutOfMemoryException 逼疯你的封神之路

OutOfMemoryException 逼疯你的封神之路

2023-10-17 14:29| 来源: 网络整理| 查看: 265

错误1: 【异常类型】:Win32Exception 【异常信息】:内存资源不足,无法处理此命令。 …… 在 System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) 在 System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) 在 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) 错误2: 【异常类型】:OutOfMemoryException 【异常信息】:内存不足。 【堆栈调用】: 在 System.Drawing.Graphics.CheckErrorStatus(Int32 status) 在 System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) 在 System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) 在 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) 错误3: 【异常类型】:OutOfMemoryException 【异常信息】:引发类型为“System.OutOfMemoryException”的异常。 【堆栈调用】: 在 System.Data.SQLite.SQLiteConvert.UTF8ToString(IntPtr nativestring, Int32 nativestringlen) 在 System.Data.SQLite.SQLite3.GetText(SQLiteStatement stmt, Int32 index) 在 System.Data.SQLite.SQLiteDataReader.GetString(Int32 i) 在 lambda_method(Closure , Shaper )

我喜欢打日志,打日志使人快乐,或者用降龙十八掌,或者是无影腿,总之不管用什么招式打日志,日志他都不敢还手,可能某天日志他突然奋起反抗,会大声喊:老子也是有爹娘的,你凭什么打我,我有个远房亲戚叫麻将,你们怎么不去打他,偏偏就打我。

好嘛,这次再打最后一次就好了,估计把你打傻了,你估计就要报警抓人了。

所以呢,所以我也经常告诫自己不要再打了,但我毋办法控记计给。

我不清楚处于什么原因你最近真的反抗了,找了内存问题来搞我。

我知道有一种可能就是大数据,此大数据非彼大数据,不是做啥分析用的,就真的只是大,比如有1G甚至2G的文件,而他的后缀是.SQL。

傻逼了吧,谁会拿一两G大的数据库文件给你,分割啊。100M一个文件不会。

100M的文件你加载试试,比如有一个三年的库,最近因为前面挖坑的人走了,部署环境被客户限得死死的,客户不提供数据库存储的服务器密码,所以你得做备份,做完备份后你得把备份再搞一套测试环境。

因此就有了那1G甚至10个100M文件得SQL导入语句以及一个表结构文件,就几张表,真的就那么几张表,我不知道三年它存了多少东西,总之你做了导出脚本,搞出来后就是这么大。

所以大数据你得处理,因此你可能就会遇到我说的,手贱到会产生内存溢出问题。

当然我列出的这个东西呢,跟上面这个大数据的案例完全没关系,我上面只是再表述一件事情,内存如果通过程序不断处理非常非常之大的文本或者脚本,就可能产生溢出,解决办法呢就是分割文件,批处理,又快,又有成就感。

 

我呢最近遇到了一个问题,困扰了几天。

项目升级,我有一个远大理想那就是不求程序卡不卡,但求程序得界面就得最好看,所以在好看的前提你就得升级项目,就的把VS2005的项目升到VS2019,用最高的framework版本,写最欢的C#特性代码。

所以一路升级,一分钟就搞定,其他错误也分分钟钟几天就处理完了,Easy Time,Easy GO!

原本以为可以喝茶翘脚的时候, 在某一次调试时,就弹出了第一个错误,不经常,或者说总是不经意间它会弹出异常,我赶紧打日志,我以为它会乖乖的,可惜事与愿违,它反抗了。

它一反抗,我就拿枪抵着它的脑袋,你再来一次我一定会崩了你,我是这个世界主宰的神,你还没资格挑战我。毕竟我搞了十年了,就你怎么点小玩意,处理不掉难道我还走点弯路绕不过吗。

项目我一手建立,百分之七八十的代码都是我亲自拷贝粘贴的,我会处理不了你,笑话了。

所以我打算花两天时间好好跟你玩玩,但实在是不好玩啊,为什么报内存错啊。你这不按套路出牌,我拿AK要给你拼命,结果你说你再火星上等这我,你这是降维打击啊,你这是犯规,你不道德。

就好像我有你的照片,但你却告诉我你在地球的另一头,要是真的喜欢你的话,就亲自走到你面前给你说我爱你!

我去你妈的妈妈的院子陪你喂那只养了一个月的小鸡鸡,你这内存异常完全不讲武德。

今天高兴了你给我第一个错误,明天高兴了给我第二个错误,你不高兴就给我第三个错误,还有第四个第五个,总之你随便给,这是被逼疯的节奏。

"要不就这样发布出去吧,反正这错误,随便做最外层的系统级捕获,捕获一下遇到Memory关键字的东西,我就屏蔽如何?"

我确定如果我这样说,我老板的儿子肯定会直接找我,并且将它装忙了泡泡水的枪,死命的朝我脸上喷。他都知道这是断老板赚奶粉钱的阴谋。

连三岁小孩都能明白,我难道不明白。

我懂,我怎么不懂,百度一下,最好的结果就这个了【OutOfMemonryException】,实在是没有其他的跟我项目有一个子相像的地方的代码,有的话,我一定马上抄代码,真的,我一定好好的抄代码。

原帖地址:https://blog.csdn.net/hliq5399/article/details/51483579

IIS你溢出,跟我有什么关系,我去你奶奶家继续喂那只小鸡鸡。

实在不好玩。

我就纳闷了,我32G内存独立显卡的游戏主机,竟然跑不动你一个五年前写的程序,你这是要上天成神么。

不管翻多少次墙,偷偷看多少次短视频,总是无法找到我懊恼的症结。

我32G内存啊,大型3A游戏都不敢搞我,你凭什么。

后来我就拼命的想,到底是不是我太急了,升级项目的时候点太快了。应该不对。

再后来我又拼命想,可能漂亮的代价就是,VS2019喜欢给你莫名其妙的错误,这很有可能呀。

要不项目删了,重新写。

这不行啊,没亲情也有点感情不是。

但还是没道理,我32G内存啊。

程序运行也不直接报错,就是,就是,就是……

哎哎,上面文章说的好像有点苗头,但就是讲不出来,到底感觉有点那个啥。

哦对了,内存,我32G,32G内存不可能支持不了,如果支持不了就只能说明一个问题,就是,就是,就是……

我又纠结了喝一杯水的时间,对,就是程序分配不了32G才可能产生内存错误。

然后我就想起了一键事情,我几年前搞项目的时候,本来是打算发布再WIN7平台,然后WIN7又想兼容32位系统,然后就搞成了X86.

早说嘛,我当时干嘛不搞成x64目标就好了。

首先如果是低端兼容机器32位,不是我说的,你还在用XP,都1202年了,你还又XP傻不啦叽的,WIN7用32位,你还是傻不啦叽的的,你要是还有老机器,当我没说,反正我现在程序绝对不要支持你们32位系统。

32位系统最高支持4G内存,现在4G内存电脑可以说能用,但基本如果比较不差的,我建议宁愿用WIN764位也不要再用32位了,反正谁用谁知道。

好吧,赶紧改,改了希望不要再出现奇怪内存问题就好,不然我还想叫上我其他好朋友一起打日志。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3