草庐IT

说真的

全部标签

windows - 如何确定应用程序是否真的没有响应,如任务管理器中所示

我的具体问题:我需要开发一个需要保持各种应用程序运行的看门狗应用程序。我正在使用visualstudio和支持.net4.0的windows环境由于我没有创建这些应用程序,也无权以任何方式修改它们,因此我只能依赖Windows提供的信息。在过去的一周里,我一直在努力寻找如何获得应用程序任务管理器中显示的“无响应”属性。我试过:1使用系统诊断,获取过程信息并解释其中的信息。问题是,当应用程序停止工作(崩溃)时,进程仍在运行,弹出JIT调试器消息并报告应用程序崩溃。在此特定时刻,任务管理器报告应用程序“无响应”,但进程信息(尽管它确实有一个主窗口句柄)的属性Responding设置为“tr

windows - "sparse zero"真的可以设置为 (BYTE)0x00 以外的值吗?

如果我没看错,PlatformSDK含沙射影:Thedefaultdatavalueofasparsefileiszero;however,itcanbesettoothervalues.然而,通过相关文本的梳理完全没有给我任何迹象表明相应的FSCTL允许设置或检索稀疏零值。那么,是介绍有误还是FS控制代码没有记载? 最佳答案 可能真的写得不好。是的,默认值为零,您不能将默认值设置为零以外的任何值。但是,您可以通过WriteFile将这些零更改为您想要的任何内容。当然,这不是您要的。 关

c# - Silverlight 真的不支持 OpenGL 吗?

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。有没有办法在Silverlight上实现OpenGL?我们需要创建一个Web浏览器应用程序来加载OpenGL3D图像并执行旋转和缩放功能。我们可以轻松地在WPFWindows应用程序中加载OpenGL组件。但它不允许将OpenGL加载到Silverlight应用程序中。如果Silverlight不支持OpenGL,那么使用OpenGL3D创建Web应用程

c# - 代码生成器或 T4 模板,它们真的是邪恶的吗?

我听说有人说不应该使用代码生成器和T4模板。这背后的逻辑是,如果您使用生成器生成代码,那么有一种更好、更有效的方法可以通过泛型和模板构建代码。虽然我有点同意上面的说法,但我还没有真正找到有效的方法来构建可以实例化自己的模板。换句话说,我永远做不到:returnnewT();此外,如果我想根据数据库值生成代码,我发现将Microsoft.SqlServer.Management.SMO与T4模板结合使用可以很好地生成大量代码,而无需复制/粘贴或使用resharper。我发现泛型的许多问题也是令我震惊的是有很多开发人员不理解它们。当我确实检查泛型的解决方案时,有时它会变得复杂,因为C#声明

c# - 相对于正确配置的同步模型,异步模型真的能提高吞吐量吗?

每个人都知道异步为您提供“更好的吞吐量”、“可扩展性”以及在资源消耗方面更高效。在进行下面的实验之前,我也想到了这种(简单的)方式。它基本上表明,如果我们考虑异步代码的所有开销并将其与正确配置的同步代码进行比较,它几乎不会产生性能/吞吐量/资源消耗优势。问题:与正确配置线程池的同步代码相比,异步代码实际上执行得更好吗?可能是我的性能测试存在某种戏剧性的缺陷?测试设置:两个ASP.NETWebAPI方法,JMeter尝试使用200个线程线程组调用它们(30秒恢复时间)。[HttpGet][Route("async")]publicasyncTaskAsyncTest(){awaitTas

c# - WCF 真的会取代.NET Remoting 吗?

我能理解WCF总体上比Remoting好,但两者对我来说似乎完全不同。MS制作了这张漂亮的图片来展示WCF有多棒(或者其他技术人员可能只勾选一个框是多么糟糕):(来源:microsoft.com)但是,WCF以SOA为中心,我认为假设每个网络应用程序都希望公开服务是不正确的。就我而言,我正在寻找在不同PC上的服务器应用程序的两个实例之间复制对象的方法。WCF似乎只是提供了一个现代版本的COM...获取一个对象并调用方法,它神奇地调用了另一台PC上的版本。但Remoting似乎做了一些完全不同的事情,我不清楚为什么它在没有被类似技术取代的情况下被弃用。那么,MS甚至声称Remoting已

c# - MethodImpl(No Optimization) 在这个方法上,它做了什么?而且真的有必要吗?

好吧,我想对密码进行哈希处理,我查看了ASP.netIdentity在Microsoft.AspNet.Identity.Crypto类中的工作原理,然后我发现了这个函数(用于比较2个密码哈希):[MethodImpl(MethodImplOptions.NoOptimization)]privatestaticboolByteArraysEqual(byte[]a,byte[]b){if(object.ReferenceEquals(a,b)){returntrue;}if(((a==null)||(b==null))||(a.Length!=b.Length)){returnfal

c# - 反射真的很慢吗?

人们普遍认为反射是缓慢的,并尽量避免它。但在目前的情况下,这种信念是真的吗?当前的.net版本发生了很多变化,例如使用ILWeaving(即ILEmit)等,而不是传统的PropertyInfo和MethodInfo执行反射的方式。是否有任何令人信服的证据表明新的反射不再那么慢并且可以使用了。有没有更好的方法来读取属性数据?谢谢,巴斯卡 最佳答案 当您考虑它时,反射的速度之快令人印象深刻。来自ConstructorInfo的缓存委托(delegate)或MethodInfo可以以与任何其他委托(delegate)相当的速度被调用。从

c# - 为什么 with() 构造不包含在 C# 中,而它在 VB.NET 中真的很酷?

我是C#开发人员。我真的很喜欢花括号,因为我来自C、C++和Java背景。但是,我也喜欢.NET家族的其他编程语言,例如VB.NET。如果您已经在.NET中编程了一段时间,那么在C#和VB.NET之间来回切换并不是什么大问题。在我工作的公司里,这是非常普遍的做法。作为C#专家,我非常喜欢VB.NET编译器提供的XML文字和with关键字。我希望Microsoft也将这些功能包括在C#中。我很好奇,其他开发人员对此有何评论! 最佳答案 我个人不喜欢WITH在构造之后使用它-如果您需要在对象初始化后对它执行几项操作,通常该行为应该封装在

c# - 增加 FileSystemWatcher.InternalBufferSize 真的那么昂贵吗?

我正在使用FileSystemWatcher来监视文件夹中的更改,但是一旦我在短时间内进行了数百次修改,我就会错过其中一些,因为内部缓冲区溢出.所以我想增加InternalBufferSize(我知道它不会真正解决问题,但它会降低它发生的可能性),但我在documentation中看到了这个警告:However,increasingbuffersizeisexpensive,becauseitcomesfromnon-pagedmemorythatcannotbeswappedouttodisk,sokeepthebufferassmallaspossible.所以我的问题是:这真的重