草庐IT

memory-fences

全部标签

c++ - 未处理的异常 Microsoft C++ 异常:cv::Exception at memory location

我刚开始使用OpenCV。我下载了OpenCV2.4.9,并安装了MSVS2010。我的Windows是X64。我遵循了以下步骤:一个。在ConfigurationProperties下,单击Debugging->Environment并复制粘贴:PATH=C:\opencv\build\x86\vc10\binVC++目录->包含目录并添加条目:C:\opencv\build\includeVC++目录->库目录并添加条目:C:\opencv\build\x86\vc10\libLinker->Input->AdditionalDependencies并添加以下内容:opencv_c

c++ - TabCtrl_InsertItem : do we need to keep memory of the text alive?

对于TabCtrl_InsertItem,我们需要保留pszTextmember指向有效内存还是操作系统会复制文本以便我们可以立即清除文本?TCITEMtcItem={TCIF_TEXT};CStringstrText;for(inti=0;i我们如何才能知道对于这个函数和future的其他函数哪个是正确的?我在MSDN中找不到它。 最佳答案 操作系统会将字符串复制到内部数据结构中。您不需要维护支持字符数组。您可以在函数调用完成后立即释放它。通常,任何接收字符串的WindowsAPI函数都是这种情况。没错,MSDN文档中没有明确说明

windows - 如何在 win32 进程中显示 'memory used' 的百分比?

我知道内存使用在Windows上是一个非常复杂的问题。我正在尝试为一个大型应用程序编写一个UI控件,该控件显示“已用内存百分比”数字,以便向用户表明可能是时候清理一些内存了,或者更有可能重新启动应用。一个实现使用MEMORYSTATUSEX的ullAvailVirtual作为基础,然后使用HeapWalk()遍历进程堆以寻找额外的空闲内存。HeapWalk()步骤是必需的,因为我们注意到在运行一段时间后,由堆分配和释放的内存从未返回并由ullAvailVirtual数字报告。经过数小时的密集工作,ullAvailVirtual数字不再准确报告可用内存量。然而,这种方法被证明并不理想,因

windows - 如何避免 "Your system is running low on virtual memory"弹出窗口?

我们的应用程序有时会使用大量内存,这是预料之中的。但是当我们在WindowsXP的高负载下测试它时,我们通常会看到非常烦人的“您的系统虚拟内存不足”弹出窗口,这会阻止我们的自动化、无人值守的测试运行...有没有可能不出现这个弹窗,直接让分配失败?该应用程序将优雅地处理它,并且测试将继续......我们使用的是WindowsXP,但如果解决方案只存在于更高版本中,我很乐意知道。 最佳答案 您可能会使用一种捕获该对话并将其取消的全局对话处理程序。QTP(HPQuickTestProfessional)具有GUI异常处理程序(或者它们叫什

Windows 内存管理 : check if a page is in memory

在Windows中,有没有办法检查页面是在内存中还是在磁盘(交换空间)中?我想知道这一点的原因是,如果页面在磁盘中,则通过不访问该页面来避免导致页面错误。 最佳答案 据我所知,没有记录在案的方法可以在用户模式下完成此操作。也就是说,可以在内核模式下确定这一点,但这将涉及检查属于内存管理器的页表条目——这不是您在任何类型的生产代码中真正不想做的事情.您要解决的真正问题是什么? 关于Windows内存管理:checkifapageisinmemory,我们在StackOverflow上找到一

c# - 填充 TreeView 时出现 "Out of Memory"

当我使用XML填充TreeView层次结构时,我遇到了“内存不足”问题。我们的XML结构非常复杂,而且格式不固定。有多个级别的子节点。我正在使用递归来迭代XML并填充TreeView结构。我试着调用GC.Collect。清除内存但它仍然抛出相同的错误。我正在使用.NETFramework3.5的C#进行开发。如果您能帮我找到解决方案,我将不胜感激。我在下面提供了用于填充TreeView的代码privatevoidaddTreeNode(XmlNodexmlNode,TreeNodetreeNode){stringattribute="";treeView1.ImageList=imag

Windows Bash - Emacs 构建失败 : Memory Protection Enabled

我正在尝试在WindowsBash(WinBash?Win-Bash?)中编译emacs-24.4,但是遇到了一个问题,即Windows似乎启用了内存保护,这会破坏emacs构建。我在“make”之后得到的错误(./configure工作正常)是:Dumpingunderthenameemacs**************************************************Warning:YoursystemhasagapbetweenBSSandtheheap(25164600bytes).Thisusuallymeansthatexec-shieldorsome

c# - Windows 服务错误 : "Attempted to read or write protected memory. This is often an indication that other memory is corrupt."

我有一个简单的Windows服务应用程序,我试图在VS2008IDE中调试,但每次运行代码时,我都会收到错误“尝试读取或写入protected内存。这通常表明其他内存已损坏。”.此错误发生在下面的service.Stop()行:staticclassProgram{//////Themainentrypointfortheapplication.///staticvoidMain(string[]args){ServiceBase[]servicesToRun;servicesToRun=newServiceBase[]{newService1()};if(Environment.Us

c - 如何: Safeguard memory - strncat()?

function(char*a,char*b){charnewStr[100];strncpy(newStr,a,sizeof(newStr));//Line1-copynomorethan100bytesstrncat(newStr,b,(sizeof(newStr)-strlen(newStr)));//Line2-?newStr[99]=NULL;//Line3-nullterminatestring}第2行:正确指定100bytes减去从a复制过来的内容的strlen以确保我不会复制超过100个字节?谢谢。 最佳答案 str

c++ - 在 Linux 上 boost windows_shared_memory

您好,我需要在Linux上构建一个项目,但它使用“boost/interprocess/windows_shared_memory.hpp”有什么方法可以在linux上运行它,或者我必须重写这段代码?谢谢 最佳答案 我认为你只需要使用#include而不是boost/interprocess/windows_shared_memory.hpp。这将处理Windows和Linux。 关于c++-在Linux上boostwindows_shared_memory,我们在StackOverfl