當你的程序接近部署階段時,你可能想從代碼中去掉所有的跟蹤和調試消息。然而,你不得不從代碼中一條一條地尋找調試指令並將其去掉。對於這種情況你可以在程序編譯期間使用編譯標志處理。從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 命名空間中可以用於手動同步的一些類 ...