【c# – 从外部域(AWS S3)加载映像并将其存储在浏览器内存中】教程文章相关的互联网学习教程文章

C#-.NET Core 2从内存流下载Excel文件【代码】

我当时在.NET Core项目中工作,当时我应该从记录创建电子表格文件并下载它而不将其保存在服务器中.搜索上述标题并没有多大帮助,但给出了一些指示.另外,ASP.NET中使用的大多数方法在.NET Core中均不起作用.因此,我终于可以想出一个效果很好的解决方案.我将在下面的答案中与那些愿意像我一样进行搜索的人分享.解决方法:首先,您将需要安装EPPlus.Core软件包.如果要通过Package Manager控制台安装它,则可以执行以下操作:Install-Packag...

c#-通过引用在堆栈上传递“值类型”-内存占用量【代码】

当我们通过引用传递值类型(已存储在堆栈中)时,内存中会发生什么? 该方法完成后,必须在某处创建临时值/指针以更改原始值.有人可以解释一下或为我指出答案吗?记忆中有很多东西,但似乎没人回答. ty解决方法:如果您有这样的方法:static void Increment(ref int value) {value = value + 1; }并这样称呼它:int value = 5; Increment(ref value);那么发生的是,不是将值5压入堆栈,而是将变量值的位置压入堆栈.即值的内容直接由Increme...

c#-用于CPU /内存密集型任务的最佳(python)设置

我正在做模拟,生成数千个结果对象.每个对象的大小约为1mb,所有结果对象应存储在内存中以查询各种临时报告.制作一个结果对象需要1到2秒. 因此,即使我将我的四核CPU完全用于并行执行,也要花费5分钟以上的时间才能完成一次仿真.一个仿真集的任务过程需要占用4?5 GB以上的内存.问题是,我想同时运行更多的仿真集并更快地完成它. 目前,我正在Windows vista64(具有8g内存的四核cpu)上使用c#和ironpython来完成此工作.我要订购一台新计算机...

将字符串复制到C#中的内存缓冲区【代码】

将字符串复制到C#中的原始内存缓冲区的最佳方法是什么? 请注意,我已经知道如何以及何时使用String和StringBuilder,所以不建议使用;)-我将需要一些文本处理和功能.呈现代码,并且目前看来,只要我可以将数据放入其中,内存缓冲区就更易于编写且性能更高. (我正在考虑使用B树编辑器缓冲区和内存映射文件,这些文件无法很好地映射到托管C#对象中,但是很容易使用指针进行编码.) 我已经考虑过的事情: > C/C++LI可以做到这一点,vcclr.h中有...

c#-在内存中存储数组的最佳实践【代码】

因此,我们有一个WCF服务,可以为客户端提供一些对象.我们的wcf服务从数据访问层(DAL)获取数据. DAL从API获取数据,并将其格式化为我们可以使用的对象.对于大多数对象来说,这很好. 但是我们还需要API中的对象列表,并且这些对象不会更改.针对API的查询需要15到20秒.长时间对同一数据多次运行此查询的方法.因此,我们想将列表存储在内存中.因为DBA不是我们最好的朋友,所以SQLite或SQL CE也不是一个选择. 现在我们有了类似的东西,第一次加...

c#-无法解释的内存泄漏与Marshal.StructureToPtr【代码】

我正在开发一个涉及通过C/C++LR包装器从本机C到C#互操作的应用程序. 我在执行以下操作时遇到了麻烦,这会导致内存泄漏:MyObject data = (MyObject)Marshal.PtrToStructure(ptr, typeof(MyObject)); Marshal.StructureToPtr(data, ptr, false);(注意:我意识到我目前实际上并未在为“数据”做任何事情,所以这是多余的.) 内存使用率持续上升,直到由于系统内存不足而使应用程序崩溃.当我删除此代码时,这不会发生.它不是垃圾收集器,因为...

c#-管理线程/内存使用的最佳方法是什么

我正在研究应用程序的可伸缩性,我想知道如何监视内存管理(尤其是“泄漏”),并确保正确创建和销毁线程. Visual Studio中是否有用于执行此操作的工具?解决方法:Visual Studio->分析->开始性能分析. 这将为您提供应用程序中的所有关键点.这还将为您提供一条日志,告诉您每种方法需要多长时间. 不需要处理线程,因为Thread类不包含Dispose函数. 您可以使用threadname.Join();来捕捉线程结束的时刻.功能.

c#-对CLR施加内存限制【代码】

我正在尝试在有限的内存情况下测试我的代码的错误处理. 我也很想知道在低内存情况下(GC可能必须更频繁地运行)代码性能如何受到影响. 有没有一种方法可以在内存有限的情况下运行.Net应用程序(或NUnit测试套件)?我知道使用Java可以限制JVM可以访问的内存量-.Net中是否存在类似内容?解决方法:这不是CLR中的选项.内存的管理方式非常不同,.NET进程中至少有10个不同的堆. .NET程序可以不受限制地使用Windows进程中可用的整个虚拟内存空...

首页> C#>我的班级使用多少内存实例-务实的答案【代码】

>构造函数调用后,下一个类的实例有多大?我想这通常可以写成size = nx c,其中x = 4在x86中,在x64中x = 8. n =? c =?> .NET中是否有一些方法可以返回此数字? 类节点{ byte [] [] a; int [] b; 列表<节点> C; 公共Node() { a =新字节[3] []; b =新的int [3]; c =新的List<节点>(0); }}解决方法:首先,这取决于该程序的编译和运行环境,但是,如果您修复了一些变量,则可以得到很好的猜测. 2...

c#-使用Parallel.For时是否有一种方法可以控制空间/内存位置【代码】

我有大量未缩放的浮点数-数组长度为40,000,000.为了扩展此数组,我认为使用Parallel.For()会更有效.这是用于缩放数据的for循环的顺序版本:for (i = 0; i < rawData.Length; i++) {scaledData[i] = rawData[i] * scale + offset; }这是转换为使用Parallel.For()的代码,例如:Parallel.For(0, rawData.Length, i => {scaledData[i] = rawData[i] * scale + offset; });但是性能更差!基于观察索引/线程组合,我的猜测是Parallel.For()...

c#-创建大量位图图像并将其保存为每个像素图像一位时,异常的物理内存使用情况【代码】

我正在尝试从base 64字符串中创建大量每像素bmp图像1位并保存.根据要求,可在短时间内创建大量图像(短时间内平均创建50,000至1,000,000).我正在使用以下代码.public void CreateoneBppImageAndSave(String base64ImageString,String ImagePathToSave){byte[] byteArray = Convert.FromBase64String(base64ImageString);System.Drawing.Image img = byteArrayToImage(byteArray);Bitmap objBitmap = new Bitmap(img);BitmapData bmpD...

使用C#XmlSerializer为大对象集编写块,以避免内存不足【代码】

我喜欢XmlSerialize的工作方式,如此简单,优雅且具有= p属性.但是,在序列化为xml文件之前建立所有对象的集合时,我遇到了内存不足的问题. 我正在从SQL数据库中填充对象,并打算使用XmlSerialize将对象写出为XML.它适用于小的子集,但是如果我尝试从数据库中获取所有对象,则会遇到“内存不足”异常. XmlSerialize是否具有某种功能,可以让我从数据库中抓取100个对象的批处理,然后编写它们,抓取下一批100个对象并附加到xml? 我希望我不必...

c#-探查器图上的“非托管内存”.这是内存泄漏指示吗?

在剖析应用程序的内存使用情况时,我已经遇到了以下图表: 如您所见,在“快照1”行之前,非托管内存大约占已使用内存的一半.然后,在“快照1”和2分55秒(请参阅下面的时间线)之后,我强制执行垃圾收集. 如我所料,第2代主要是收集的,但是未托管的内存没有释放,现在它可以容纳大约2个.总已用内存的2/3. 我不知道在这种情况下“非托管内存”是什么意思.这是带有某些WinForms / GDI互操作的WPF应用程序.我敢肯定,所有应该处置的东西都已处置...

c#-使用.Clone()裁剪位图时内存不足【代码】

我正在尝试根据用户上传的图像自动生成缩略图,但始终收到“内存不足”的异常.据我了解,当您指定图像以外的开始位置或宽度/高度时,会抛出内存不足异常,即使我这样做var rct = new Rectangle(5, 5, 10, 10); var whatever = bitmap.Clone(rct, bitmap.PixelFormat);在800900像素的图像上,我仍然会收到“内存不足”异常,我无法弄清楚问题出在哪里,并且由于与OOM异常有关的所有内容,我也无法真正从其他线程中获得任何好的答案.超出图像...

C#-gzipstream内存流到文件【代码】

我正在尝试使用Gzip压缩来压缩JSON文件,以将其发送到另一个位置.它每天需要处理5,000-10,000个文件,而且我不需要本地计算机上文件的压缩版本(实际上它们已被传输到AWS S3进行长期归档). 由于我不需要它们,因此我尝试压缩到一个内存流,然后使用该内存流写入AWS,而不是将每个压缩到磁盘.每当我尝试执行此操作时,文件就会损坏(例如,当我在7-Zip中打开它们并尝试在其中打开JSON文件时,会收到“数据错误文件已损坏”). 当我尝试将内存流...

加载 - 相关标签