C# Thread.Name 的作用和意義


Thread.Name屬性

C#的線程提供Thread.Name屬性。這意味着每個線程可以設定一個Name屬性來標志它們。

Name屬性的使用時特性

線程的Name屬性默認情況下是null。該值只能被賦值一次, 如果已經賦值一次的情況下再次賦值, 將拋出InvalidOperationException異常。這種設計應該是為了保證線程的名字不被改變而安排的。

Name屬性的意義

Name屬性是為了讓程序員標志線程而准備的, 是一種輔助功能, 該屬性與ManagedThreadId不同, ManagedThreadId是自動管理的, 它保證每個線程的ID值是唯一的, 但Name可以重復。

程序員設定Name值后, 可以方便調試。在Visual Studio中, 線程窗口可以顯示線程的包括名稱在內的各種屬性, 這有助於方便地區分不同線程, 因為在調試中, 如果使用輔助變量來存儲線程號(指ManagedThreadId)和自定義名稱的對應關系, 操作會比較復雜。

若要查看程序的線程情況, 需要打開線程窗口, 它一般在Visual Studio菜單的調試->窗口->線程中啟用。

需要注意的是, 線程窗口只會在程序暫停在斷點時顯示, 這與"調試時查看變量值"是類似的。

參考:

https://blog.csdn.net/u011033906/article/details/62236050?locationNum=9&fps=1

https://docs.microsoft.com/zh-cn/dotnet/api/system.threading.thread.name?redirectedfrom=MSDN&view=netcore-3.1#System_Threading_Thread_Name

https://docs.microsoft.com/zh-cn/visualstudio/debugger/how-to-use-the-threads-window?view=vs-2019

《精通C# 第六版》

 

轉載時記得標明出處哦 本文地址: https://www.cnblogs.com/eehow/p/13451447.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM