系统.诊断.跟踪开销

发布于 2024-11-03 09:17:24 字数 242 浏览 4 评论 0原文

我有一个应用程序,几乎在它使用的每个方法中都使用 Trace.WriteLine。该程序有几个不同的问题。

我想知道的是,如此频繁地使用 System.Diagnostics.Trace.WriteLine 是否会带来任何开销?我希望在发现问题时解决问题,并且我个人认为在程序中的几乎每个方法中使用 Debug/Trace WriteLine 都会带来性能成本。

编写这个应用程序的程序员很匆忙,还包括了一些过去给我们带来麻烦的资产报表。

I have an application that uses Trace.WriteLine in nearly every method it uses. The program has several different problems.

What I am wondering is if there is any overhead that comes with using System.Diagnostics.Trace.WriteLine so often? I am looking to solve problems as I discover them and I personally feel using Debug/Trace WriteLine in nearly every single method within the program has to come with a performance cost.

The programmer who wrote this application was rushed and also included some asset statements that has caused trouble for us in the past.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

痴情 2024-11-10 09:17:24

Trace可能可能会导致您的应用程序出现性能问题。特别是如果它被用在程序中的每个方法中。

幸运的是,Trace.WriteLine 附加了一个Conditional 属性:Trace。如果您在没有定义 Trace 的情况下编译应用程序,它将像调用根本不存在一样进行编译。这将使您能够快速进行目测测试,看看它是否影响性能。

了解的唯一方法是将应用程序连接到分析器。这将明确告诉您 Trace.WriteLine 是否是您的应用程序的问题。

It's possible that Trace could result in a performance problem for your application. Especially if it's used in every single method in the the program.

Luckily Trace.WriteLine has a Conditional attribute attached to it: Trace. If you compile the application without Trace defined it will compile as if the calls simply didn't exist. This will allow you to quickly do an eyeball test to see if it is affecting performance.

The only way to know though is to hook the application up to a profiler. This will tell you definitively if Trace.WriteLine is a problem for your application.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文