草庐IT

缓存失效

全部标签

windows - 检索 DNS 缓存中的内容

在Windows中,是否有一个API可以检索DNS缓存的内容。我的一所大学问了我这个问题,但到目前为止,我已经查看了MSDN并搜索了网络,但我找不到任何关于此的信息。他目前的解决方案是解析ipconfig/displaydns的输出,但我相信有更好的方法可以做到这一点。ipconfig如何读取缓存中的内容? 最佳答案 DnsQuery函数,用DNS_QUERY_NO_WIRE_QUERY调用查询选项,允许您在缓存中查找特定条目。这可能就足够了,具体取决于您要做什么。似乎没有任何记录的方式来枚举条目。查看ipconfig.exe,它似

c - 使用 fgets 随机读取非常大的文件似乎会使 Windows 缓存达到极限

我已经为Windows7-64位编写了一个C/C++程序,可以处理非常大的文件。在最后一步,它从输入文件(10GB+)中读取行并将它们写入输出文件。对输入文件的访问是随机的,写入是顺序的。编辑:采用这种方法的主要原因是减少RAM使用量。我在阅读部分基本上做的是:(抱歉,非常短,可能有错误)voidseekAndGetLine(char*line,size_tlineSize,off64_tpos,FILE*filePointer){fseeko64(filePointer,pos,ios_base::beg);fgets(line,lineSize,filePointer);}通常这段

python - Python 有 8KiB 字节长的文件 I/O 缓存吗?

我正在研究Python3.6.0中的文件I/O性能。鉴于此脚本包含3个测试:#!python3importrandom,string,timestrs=''.join(random.choice(string.ascii_lowercase)foriinrange(1000000))strb=bytes(strs,'latin-1')inf=open('bench.txt','w+b')inf.write(strb)fortinrange(3):inf.seek(0)inf.read(8191)fortinrange(3):inf.seek(0)inf.read(8192)fortin

c++ - 确定 CPU 缓存中值的值和/或地址

有没有办法准确确定当前或所有进程的CPU缓存(L1、L2等)中当前驻留的值、内存地址和/或其他信息?我已经做了很多阅读,其中展示了如何优化程序以更有效地利用CPU缓存。但是,我正在寻找一种方法来真正确定某些方法是否有效。底线:是否有可能100%确定什么进入和不进入CPU缓存。搜索此主题会返回几个关于如何确定缓存大小的结果,但不会返回内容。编辑:澄清下面的一些评论:由于软件无疑会改变缓存,CPU制造商是否有提供此功能的工具/硬件诊断系统(内置)? 最佳答案 如果不使用专用硬件,您无法直接检查CPU缓存中的内容。运行任何软件来检查CPU

windows - Unit Test中如何模拟基于MFC的GUI功能失效?

如何在单元测试环境下模拟DialogBox、WindowCreationFunctions等MFC系统功能失效?是否有可用的工具或框架? 最佳答案 一个想法是使用ApplicationVerifier(免费,Microsoft)及其“低资源模拟”模式。它没有任何UI功能stub,但它可以伪造某些Win32API中的故障,例如内存分配、等待原语等。另一个想法是为C++使用成熟的模拟框架。Isolator++就是这样一种框架。 关于windows-UnitTest中如何模拟基于MFC的GUI

c++ - 第一次调用 FindWindowEx/EnumChildWindows 后是否缓存了控件树?

我注意到,如果您针对属于不在前台(即最小化)窗口的hWnd调用FindWindowEx或EnumChildWindows,则它们不会报告任何children。另一方面,如果我首先对正在查询的窗口调用SetForegroundWindow,然后调用FindWindowEx或EnumChildWindows,它们会报告所有子项.即使我感兴趣的窗口不在前台,下一次调用也会报告所有子项。它几乎是在第一次调用后进行某种缓存? 最佳答案 这是您自己的应用程序中的一个窗口,还是您正在调查第三方应用程序的功能?我猜应用程序只会在它第一次进入前台时创

windows - 即使 Windows 在缓存中有条目(ARP 表),也会发送 ARP 请求

我们有一个运行WindowsXPEmbeddedSP1的产品。我们在ARP表中为假IP配置假(不存在)MAC地址。当发生通信时,Windows将数据包发送到伪造的MAC和伪造的IP,稍后我们在驱动程序中将其更改为真实的。这就是软件的设计方式。问题是有时Windows会开始发送ARP请求以获取假IP,即使它在ARP表中有一个条目。我不知道为什么会发生这种情况,并且在盲目地尝试重现该问题时,我编写了一个脚本来删除ARP条目,然后在几秒钟后再次添加它。经过一些尝试,我看到了问题的发生。关于我应该检查/更改什么的任何想法? 最佳答案 在ar

php - 在 Windows Server 2008 x64 上安装 php 内存缓存

我在WinServer2008R2x64上运行XAMPP1.8.1,我的PHP版本是5.4.7。我关注了this安装后,从here下载php_memcache-3.0.7-5.4-ts-vc9-x86.zip并替换了here中的memcached服务文件.服务升级了,php.ini里的扩展也加了,但是在phpinfo()里还是看不到mod启用。有什么想法吗? 最佳答案 首先检查memchaced服务是否正在运行telnet127.0.0.111222(如果没有安装telnet客户端)如果失败,则意味着您的memchaced构建未运行

c# - 如何使 MUICache 失效?

我通过右键单击项目->应用程序->程序集信息->标题修改了我的C#应用程序名称。如果应用程序已经安装,则它不会更新名称,因为它正在从未刷新的MUICache中提取应用程序名称。我正在尝试找到一种方法,使MUICache以编程方式失效,以便它适本地更新应用程序名称。谢谢 最佳答案 您可以使用以下方法删除MuiCache键中包含应用程序可执行文件路径的值。从MuiCache中删除该值后,通过WindowsOpenwith浏览到您的应用程序对话框将使用更新后的标题将可执行文件的路径重新添加到MuiCache。usingMicrosoft.

windows - 使用 PowerShell 的 IIS 输出缓存设置

我一直在努力寻找一种方法来配置IIS的“outputcaching”设置。我一直在环顾四周,确实有任何有用的东西。我基本上是在尝试为扩展名.pdf和设置“直到更改”设置输出缓存。我试过这段代码:Set-WebConfigurationProperty-pspath'MACHINE/WEBROOT/APPHOST/DefaultWebSite'-Filter"system.webServer/caching/profiles/add[@extension='.pdf']"-Name"kernelCachePolicy"-Value"CacheUntilChange"但这给了我以下错误:W