当你的程序接近部署阶段时,你可能想从代码中去掉所有的跟踪和调试消息。然而,你不得不从代码中一条一条地寻找调试指令并将其去掉。对于这种情况你可以在程序编译期间使用编译标志处理。从Visual Studio.NET IDE, 你可以在解决方案管理窗口右键工程名->从菜单页选择属性。如下图 ...
在这部分,我们将了解如何改变默认的监听器程序。Trace 类和Debug类暴露了监听器集合 一系列监听程序集合 。如果不添加任何新的监听类,DefaultTraceListener 将指向由Visual Studio.NET 提供的调试输出窗口。然而,.NET Framework 提供另外可以用作监听程序的两个类: 如果你需要跟踪一个不在Visual Studio 中执行的多线程应用程序的行为, ...
2012-04-24 22:26 1 3204 推荐指数:
当你的程序接近部署阶段时,你可能想从代码中去掉所有的跟踪和调试消息。然而,你不得不从代码中一条一条地寻找调试指令并将其去掉。对于这种情况你可以在程序编译期间使用编译标志处理。从Visual Studio.NET IDE, 你可以在解决方案管理窗口右键工程名->从菜单页选择属性。如下图 ...
我们下一个将要分析的代码检测技术是跟踪。在一个多线程应用程序中,这个技术非常重要。当已经启动了多个任务时,你可以跟踪一个线程的行为和相互之间的各个线程之间的影响。我们稍后将看到在这种情况下使用调试器是不现实的。.NET Framework 提供了很多有用的类来帮助开发人员轻松地实现跟踪功能 ...
调试与跟踪是两个经常使用到的技术,这两种技术对程序员是非常必要的。前者允许开发人员分析一个程序的变量值以及代码,一步一步跟踪代码流程。后者允许我们跟踪我们应用程序的行为,在一个监听器(一个日志文件,Windows 事件日志等)中显示信息。它们是创建鲁棒性应用程序的基础,因为它们给开发人员提供 ...
现在我们要集中精力实现一个实战实例来描述到目前为止我们已经看过的内容。这里要实现的DataImport 例子是那种等待文件到达指定目录然后将其导入到一个SQL Server 数据库中的典型程序。下面我们列出了这个例子中将要使用的类: FileSystemWatcher: 这个类允许 ...
在这部分,我们将使用ThreadPool 和MSMQ 进行消息收发。MSMQ 是一个分布式队列,通过MSMQ 一个应用程序可以异步地与另外一个应用程序通信。 在一个典型的场景中,我们要向维护一个队列的MSMQ 服务器发送消息,MSMQ 发送方与MSMQ 服务器(特定队列)之间创建一个连接 ...
在这部分我们将看两个大的例子。首先,我们将看一下创建线程安全的包装器的例子,然后看一下数据库连接池例子。 实现自己的线程安全包装器 实现自己的线程安全包装器主要基于你可能不想让类库中的每个类都是线程安全的,而使用同步也会带来性能问题的事实。你可能想要为开发人员提供一个是否使用一个同步类的选择 ...
作用域对象 Servlet上下文监听器 Servlet会话监听器 Servlet请求监听器 一:对象作用域 ...
第三种同步策略关注手动同步技术,.NET Framework 提供了一个经典的技术套件。他们给了程序员使用类似WIN32线程API的底层线程API来创建和管理多线程应用程序的能力。 下面的表显示了System.Threading 命名空间中可以用于手动同步的一些类 ...