.net sqlite 内存溢出 问题的分析与解决。

摘要:
一个小的工具网站,用了sqlite数据库,在并发小的情况一切正常,但是并发量上来之后,就报"outofmemory"错误了。分析了代码,就是很简单的根据一个条件取一段数据,并且datareader也是释放了的。经分析,connstring每次都是实例化了一个打开,但是未关闭,也许是这个问题引起的,所以想到联接池没有启用。在联接字符串里面设置Pooling=true;后问题解决。

一个小的工具网站,用了sqlite数据库,在并发小的情况一切正常,但是并发量上来之后,就报"out of memory"错误了。

分析了代码,就是很简单的根据一个条件取一段数据,并且 datareader也是释放了的。

那问题出在那里了呢?经分析,connstring每次都是实例化了一个打开,但是未关闭,也许是这个问题引起的,所以想到联接池没有启用。

在联接字符串里面设置 Pooling = true;后 问题解决。

免责声明:文章转载自《.net sqlite 内存溢出 问题的分析与解决。》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇ExtJS 基础解析之【Ext.FormPanel】之一中国大学mooc机器学习第一天-学期导学下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Qt之操作数据库(SQLite)

SQLite 简介 SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如Tcl、C#、PHP、Java等,还...

服务器内存溢出问题

系统测试时,导出、下载功能,偶尔会出现“out of memory”(内存溢出)问题。 内存溢出是指应用系统中存在无法回收的内存或使用的内存过多,最终使得程序运行要用到的内存大于虚拟机能提供的最大内存。 引起内存溢出的原因有很多种,常见的有以下几种:1.内存中加载的数据量过于庞大,如一次从数据库取出过多数据;2.集合类中有对对象的引用,使用完后未清空,使得...

Java内存溢出详解

一、常见的Java内存溢出有以下三种: 1.java.lang.OutOfMemoryError: Java heap space----JVM Heap(堆)溢出JVM在启动的时候会自动设置JVM Heap的值,其初始空间(即-Xms)是物理内存的1/64,最大空间(-Xmx)不可超过物理内存。 可以利用JVM提供的-Xmn -Xms -Xmx等选项可进...

sqlite简介

SQLite 是一个实现了完备的(self-contained),可嵌入的(embeddable),零配置(zero-configuration)的SQL数据库引擎的小型的C函数库。它包含以下的特点:.    事务处理原子化(atomic),一致化(consistent),持久化(isolated),绝缘化(durable),即使是在系统崩溃和掉电时   ...

启动tomcat时报内存溢出,Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "main"

文章转载自https://www.cnblogs.com/Chiler/p/9484266.html 问题原因   通过tomcat启动项目,也许是因为项目太大,配置的内存不够用了。老是报内存溢出的问题。 解决办法 1.选中项目 右键 run as -》Run Configurations... 2.出现tomcat配置页面。选中需要修改的tomcat...

Java内存溢出的详细解决方案 转载

一、内存溢出类型 1、java.lang.OutOfMemoryError: PermGen space JVM管理两种类型的内存,堆和非堆。堆是给开发人员用的上面说的就是,是在JVM启动时创建;非堆是留给JVM自己用的,用来存放类的信息的。它 和堆不同,运行期内GC不会释放空间。如果web app用了大量的第三方jar或者应用有太多的class文件而恰好...