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

从C#COM dll到Delphi应用程序的回调会导致内存泄漏【代码】

我有一个用C#编写的COM服务器,以及用Delphi编写的COM客户端.我已经实现了一个简单而优雅的回调机制,它就像一个魅力.但是,FastMM4报告我的Delphi客户端正在创建内存泄漏.我已经将应用程序提炼到泄漏源自的本质.我的漏洞是由对象被引用计数的方式引起的(它永远不会变为零,所以永远不会被破坏),所以我试图理解为什么引用计数的工作原理是这样的,并且是因为我在实施中做错了. 我已经尽可能地减少了代码,但是在一个问题中包含它似乎仍然...

c# – 是否可以避免序列化/反序列化并与内存映射文件(MMF)共享大内存对象?【代码】

我需要将C#内存对象从一个进程传递到另一个进程(IPC) 我刚刚尝试在文件中序列化此对象,然后在我的第二个进程中使用二进制序列化(BinaryFormatter)对其进行反序列化,以获得良好的性能. 不幸的是,性能达不到我的预期.由于我的对象有很多信息,序列化和反序列化需要花费太多时间(我的对象的序列化在我的硬盘上需要超过1MB). 我听说过Memory-mapped files (MMF) 当进程之间共享的对象很简单时,这似乎是IPC最快的方??法之一.What is the ...

c# – 将Word文档转换为内存中的pdf字节数组【代码】

我需要打开一个Microsoft Word文档,替换一些文本然后转换为pdf字节数组.我已经创建了代码来执行此操作,但它涉及将pdf保存到磁盘并将字节读回内存.我想避免在磁盘上写任何东西,因为我不需要保存文件. 以下是我到目前为止所做的代码……using System.IO; using Microsoft.Office.Interop.Word;public byte[] ConvertWordToPdfArray(string fileName, string newText) {// Temporary path to save pdfstring pdfName = fileName.Subst...

c# – 如何让内存来测试另一个应用程序?【代码】

所以我想在低内存条件下测试我的Windows应用程序,我发现最简单的方法是创建另一个只占用内存的应用程序(一个控制台应用程序). 我创造了这个怪物:while (true) {try{Marshal.AllocHGlobal(1024);}catch{} }但它只有3.7 GB.然后我打开这个应用程序的另一个实例,它又回来了. 如何让垃圾收集器收集我的分配? 或者:如何在我的通用Windows应用程序上测试低内存条件?解决方法:您可以尝试将GCSettings延迟模式更改为SustainedLowLatenc...

c# – XmlSerializer extraTypes内存泄漏【代码】

我正在开发一些应用程序,它使用extraTypes参数调用许多XmlSerializer构造函数.我发现,每次调用都会增加大约100KB的应用程序内存和2个描述符(有时更多).代码示例: 此代码增加了每个调用100KB和2个处理程序的应用程序内存while (true){Console.ReadLine();new XmlSerializer(typeof (object), new Type[] {});}此代码增加了43024KB和2004处理程序的应用程序内存for (var i = 0; i < 1000; i++){new XmlSerializer(typeof (object), ...

c# – HttpClient内存使用量激增,响应速度很快【代码】

我正在开发一个控制台应用程序,它将端点列表提供给视频数据,发出HTTP请求,并将结果保存到文件中.这些是相对较小的视频.由于我无法控制的问题,其中一个视频非常大(145分钟而不是几秒钟). 我看到的问题是,在调用该请求后,我的内存使用率达到~1 GB,并且我最终得到“任务被取消”错误(可能是因为客户端超时).这很好,我不想要这个视频,但令人担忧的是,无论我做什么,我分配的内存都会保持很高.我希望能够释放内存.似乎有点关于任务管理器...

c# – ToolStrip内存泄漏【代码】

我一直在使用SWF-ToolStrip解决内存泄漏问题.据此http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=115600#已经解决.但它在这里看不到. 有谁知道如何解决这个问题?解决方法:这个问题似乎在.NET 3.5 SP1和.NET 4.0中仍然存在. 要重现该问题,您必须创建一个ToolStrip,其中包含的项目数多于它可以显示的项目,这会导致它创建溢出按钮.只有在实际单击溢出按钮时才会出现此问题.单击它会导致创建ToolS...

c# – Krypton(Winforms库)是否可能存在内存泄漏问题【代码】

我正在调试一个大的Winforms应用程序,它有一些内存泄漏问题.我使用.NET内存分析器,到目前为止,我已经能够找到一些泄漏并解决它们.但是现在我遇到了一个问题,我不确定是一个问题,如果它是一个我不知道如何解决它. 运行我的应用程序1分钟后(考虑到普通用户可以使用它几个小时不是很多),.NET内存分析器向我展示了Krypton Toolkit中大约100-200个不同控件的实例,如果我这个数字正在增加继续前进(它们永远不会被垃圾收集,因为看起来它们...

c# – 用于只读字典访问的最有效的内存数据结构

在C#中,我有一些静态数据可以放在Dictionary< int,T>中.其中T是一些参考类型. Web应用程序只需要静态初始化一次(它不会更改). 由于我不必担心插入或删除性能,使用什么是最好的数据结构(或者我应该自己动手)?我可能会看到大约100,000个条目,间隔相当均匀. 我正在寻找一种获取这些数据的最佳算法.字典&LT&GT虽然不错,但我认为必须有针对只读数据优化的东西. 我怀疑,但尚未确认这些密钥的范围可能是0 – 400,000.如果是这样的话,建...

c# – 具有回调的代理上的内存泄漏【代码】

public delegate void SendCallbackType();public class SenderBase{SenderBase(){mySend = new SendCallbackType(SendData);mySend.BeginInvoke(SendCallback, null);}void SendData(){ // process / sending data}void SendCallback(IAsyncResult ar){ **SendCallbackType worker = (SendCallbackType)((AsyncResult)ar).AsyncDelegate;worker.EndInvoke(ar);**//Above code is mandatory ? Working fine with...

c# – 从外部域(AWS S3)加载映像并将其存储在浏览器内存中【代码】

我是ASP.net的新手,想知道从外部域(Amazon S3)加载照片是多么容易,使用他们的过期链接,并将照片存储在浏览器内存中,以便使用OpenBinary方法获取另一个脚本?这允许我在打印到屏幕之前调整大小并为其添加水印. 这就是我想要发生的事情: 在loadImage.aspx上,我从我的数据库中获取photoID,为Amazon S3创建一个过期的签名URL,以某种方式调用照片并将其保存到内存中.在内存中时,我的ASP.Jpeg脚本将调用OpenBinary方法,调整大小并为照片...

C#内存管理【图】

C#内存管理—职场生存的必修课 ?前言 在职场中,确立自身的技术水平很重要,因为,如果你被标记成了技术菜鸟,那么你的工作一旦做快了,大家就会一致的认为这个任务比较简单;如果你未如期完成,则会被各种明嘲暗讽,你不但无法获得合理的表扬,还会无端被迫接受攻击。 但是,如果你被标记成了技术高手,那么你就算任务延期也会被理解,因为,他们会认为你当前的任务太难了。而且,即便你有些性格缺陷,大家也是会接受你,他们会认...

c# – Windows Phone 8中没有自动释放内存【代码】

我目前在Windows Phone 8工作.我面临一些与内存有关的问题. 我有两个PhoneApplicationPages.这两个页面都包含图像,文本块等.假设当我在第1页时我的应用程序使用30MB内存.如果我从第1页导航到第2页,则已用内存量增加到35MB.然后当我回到第1页时,用过的内存仍然是35MB. 为什么内存或缓存没有自动释放?有没有办法手动清除内存或缓存? (p.s:表示页面的两个类都是静态的,我在OnNavigatedFrom方法中将它们设置为null.)解决方法:由于某...

c# – 内存泄漏处理Xamarin.Forms【代码】

我在我的应用程序中有一个内存泄漏问题,我用Xamarin.Forms创建.我的应用程序包含带有图像的ListView.如果我点击一个项目并返回到ListPage,我可以在“输出”窗口中看到内存耗尽.我试过在我的ContentPage的OnDisappearing()中调用GC.Collect(). 我在Android项目中看到了base.Dispose().但我不知道如何使用它. ArticleListPage.xaml<?xml version="1.0" encoding="utf-8"?> <ContentPage xmlns="http://xamarin.com/schemas/2014/form...

c# – 如何获取托管类的原始内存指针?【代码】

如何在C#中找到指向托管类的原始指针,希望它是内存中的原始大小?显然,CLR不允许这样做 – 更准确地说,严格禁止,因为托管类的非托管表示永远不应该出于稳定性和安全性原因而进行处理 – 所以我正在寻找一个黑客.我不是在寻找序列化 – 我确实需要托管类的转储,因为它在原始内存中表示. 更准确地说,我在下面的例子中寻找类似函数getObjectPtr的东西:IntPtr getObjectPtr(Object managedClass) {...}void main() {var test=new Test...

加载 - 相关标签